gpt4 book ai didi

excel - 复制并粘贴到工作表中,谁的姓名不等于列表中的值?

转载 作者:行者123 更新时间:2023-12-03 02:20:30 29 4
gpt4 key购买 nike

我正在尝试将信息复制并粘贴到某些工作表中。大多数工作表名称我已经知道,但可能会添加一个新工作表,但我不知道其名称。

我不想更改 3 个工作表(我们将其称为 WorkSheet1、WorkSheet2 和 WorkSheet3)。我想从 WorkSheet2 复制一些值并将它们粘贴到除 1-3 之外的所有工作表中。到目前为止,我有一个 IF 语句,其中包含我知道名称的工作表(WorksheetX、Y 和 Z)。我在最后一个实例中遇到了麻烦,因为我不知道工作表的名称。我一直在考虑使用 Or。这是我到目前为止所拥有的:

Dim ws As Worksheet
Dim og As Worksheet
Set og = Sheets("WorkSheet2")
For Each ws In Worksheets
If ws.Name = "WorkSheetX" Then
og.Range("A1").Copy
Sheets("WorkSheetX").Range("L4").PasteSpecial
ElseIf ws.Name = "WorkSheetY" Then
og.Range("A1").Copy
Sheets("WorkSheetY").Range("L4").PasteSpecial
ElseIf ws.Name = "WorkSheetZ" Then
og.Range("A1").Copy
Sheets("WorkSheetZ").Range("L4").PasteSpecial

'This is where I am having trouble. I won't know the name of the new sheet
'Just that it wont be WorkSheet1,2,3,X,Y, or Z
ElseIf (ws.Name <> "WorkSheet1" Or ws.Name <> "WorkSheet2"
Or ws.Name <> "WorkSheet3" Or ws.Name <> "WorkSheetX" Or
ws.Name <> "WorkSheetY" Or ws.Name <> "WorkSheetZ") Then
og.Range("A1").Copy
ws.Range("L4").PasteSpecial
End If
Next

最佳答案

这是完成您的任务的简单代码。

Dim ws As Worksheet

'Change the sheet names you don't want to perform you copy_paste
Sheets(Array("Sheet1", "Sheet2", "Sheet4", "Sheet_n")).Visible = False

For Each ws In Application.ThisWorkbook.Worksheets
If ws.Visible = True Then
ws.Range("L4").Value = ws.Range("A1").Value
End If
Next ws

Sheets(Array("Sheet1", "Sheet2", "Sheet4", "Sheet_n")).Visible = True

关于excel - 复制并粘贴到工作表中,谁的姓名不等于列表中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53455047/

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