String Excel VBA在sheet2中查找字符串,并在sheet1中复制该字符串

String Excel VBA在sheet2中查找字符串,并在sheet1中复制该字符串,string,excel,vba,copy,paste,String,Excel,Vba,Copy,Paste,我在VBA中查找一个代码,以查看sheet2中的字符串(称为“设置”),并将“设置”下的字符串复制到单元格A1中的sheet1中 我有一个录制的宏中的不工作代码: Sub FindString() Cells.Find(What:="Setup", After:=ActiveCell, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _

我在VBA中查找一个代码,以查看sheet2中的字符串(称为“设置”),并将“设置”下的字符串复制到单元格A1中的sheet1中

我有一个录制的宏中的不工作代码:

Sub FindString()

Cells.Find(What:="Setup", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False, SearchFormat:=False).Activate

Range("I8").Select
Selection.Copy
Sheets("Tabelle1").Select
ActiveSheet.Paste
End Sub
如果我更改该字符串,它将显示错误91

试试这个

Sub FindString()
Sheets("Sheet2").Activate
Cells.Find(What:="Setup", LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False, SearchFormat:=False).Activate

ActiveCell.Select
Selection.Copy
Sheets("Sheet1").Select
Range("A1").Select
ActiveSheet.Paste
End Sub
"--------------------------------------------------------------------------------------

' Specify the string to find in sheet1 B1 cell
Sub FindString2()
Sheets("Sheet2").Activate
Cells.Find(What:=Sheets("Sheet1").Range("B1").Value, LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False, SearchFormat:=False).Activate

ActiveCell.Select
Selection.Copy
Sheets("Sheet1").Select
Range("A1").Select
ActiveSheet.Paste
End Sub

与@Punith的答案类似,只是您不需要更改工作表

Option Explicit
Sub find_string()
    Const strLookup As String = "Setup"
    Dim wb As Workbook, find_ws As Worksheet, to_ws As Worksheet, rngFound As Range

    Set wb = ThisWorkbook
    Set find_ws = wb.Sheets("find")
    Set to_ws = wb.Sheets("to")

    Set rngFound = find_ws.Cells.Find(What:=strLookup, LookIn:=xlValues, LookAt:=xlWhole).Offset(1, 0)
    to_ws.Range("A1").Value = rngFound.Value
End Sub

谢谢,第一部分是有效的,但是如果有多个字符串具有相同的名称,并且我想要第二个,如果可能的话,可以接受第二个吗?