gpt4 book ai didi

vba - 将工作表 1 上的行复制到所有现有工作表

转载 作者:行者123 更新时间:2023-12-03 02:52:46 24 4
gpt4 key购买 nike

我得到了一个 Excel 文件,其中有 30 个工作表,全部包含相同的第一行。我正在寻找一种代码/方式来复制工作表 1 上的第一行并将其粘贴到所有现有工作表上。

行会定期更改,通过这种方式我只需调整一次。

最佳答案

您可以使用.FillAcrossSheets来执行此操作:

Sub CopyToAllSheets()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
Sheets.FillAcrossSheets ws.Range("1:1")
End Sub

请注意,您可以使用可选类型参数指定要复制的内容:

  • 复制内容和格式 = xlFillWithAll
  • 仅复制内容 = xlFillWithContents
  • 仅复制格式 = xlFillWithFormats

默认值为xlFillWithAll。如果您想使用其他选项之一,请执行以下操作:

' copy contents
Sheets.FillAcrossSheets ws.Range("1:1") xlFillWithContents

' copy formats
Sheets.FillAcrossSheets ws.Range("1:1") xlFillWithFormats

如果您不想复制到工作簿中的每个工作表,您可以指定目标工作表列表,如下所示:

Sub CopyToSpecificSheets()
Dim wb As Workbook
Dim ws As Worksheet
Dim targetSheets As Variant

Set wb = ThisWorkbook
Set ws = wb.Sheets("Sheet1")
' the sheet we are copying from must be included in the array
targetSheets = Array(ws.Name, "Sheet2", "Sheet4")
wb.Sheets(targetSheets).FillAcrossSheets ws.Range("1:1")
End Sub

关于vba - 将工作表 1 上的行复制到所有现有工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18574676/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com