使用另一个工作簿 sheet 执行此宏要求执行的操作
With another workbook sheet do this stuff this macro says to do
我打开了一个工作簿,我正在尝试对另一个工作簿执行操作,但是在 With 语句中调用宏只会使其作用于我打开的工作簿,而不是我想要的其他工作簿正在做的事情。
Sub Format_Another_Worksheet()
Dim wb As Workbook
Set wb = GetObject("C:\Users\john\Desktop\anotherworkbook.xls")
With wb.Worksheets("Sheet1")
.Cells.Font.Size = 14
Call myfunction("A")
End With
End Sub
Sub myfunction(col As String)
Range(col & "1").Font.Size = 30
End Sub
我有数百个 myfunction 宏需要使用,但不想进入并开始向它们全部附加内容,事实上我无法触及这数百个其他 myfunction 宏
发送您想要运行将此代码作为函数参数的一部分的工作表对象:
Sub Format_Another_Worksheet()
Dim wb As Workbook
Set wb = GetObject("C:\Users\john\Desktop\anotherworkbook.xls")
With wb.Worksheets("Sheet1")
.Cells.Font.Size = 14
Call myfunction("A", wb.Worksheets("Sheet1"))
End With
End Sub
Sub myfunction(col As String, ws as Worksheet)
ws.Range(col & "1").Font.Size = 30
End Sub
显然这与 With
无关,但您的 With
仅在调用它的 sub/function 中具有上下文。它不会通过函数调用继续存在。
然后按名称对工作簿进行寻址。
我有一个在两个工作簿之间工作的宏,我有这个:
Dim wbmaster As Workbook 'name for master workbook
Dim wbtarget As Workbook 'name for student workbook
wbmaster.Sheets("Answers_Source").Range("h1:z160").Copy
wbtarget.Sheets("ANSWERS").Range("h1:z160").PasteSpecial
所以它确切地知道该做什么。
我打开了一个工作簿,我正在尝试对另一个工作簿执行操作,但是在 With 语句中调用宏只会使其作用于我打开的工作簿,而不是我想要的其他工作簿正在做的事情。
Sub Format_Another_Worksheet()
Dim wb As Workbook
Set wb = GetObject("C:\Users\john\Desktop\anotherworkbook.xls")
With wb.Worksheets("Sheet1")
.Cells.Font.Size = 14
Call myfunction("A")
End With
End Sub
Sub myfunction(col As String)
Range(col & "1").Font.Size = 30
End Sub
我有数百个 myfunction 宏需要使用,但不想进入并开始向它们全部附加内容,事实上我无法触及这数百个其他 myfunction 宏
发送您想要运行将此代码作为函数参数的一部分的工作表对象:
Sub Format_Another_Worksheet()
Dim wb As Workbook
Set wb = GetObject("C:\Users\john\Desktop\anotherworkbook.xls")
With wb.Worksheets("Sheet1")
.Cells.Font.Size = 14
Call myfunction("A", wb.Worksheets("Sheet1"))
End With
End Sub
Sub myfunction(col As String, ws as Worksheet)
ws.Range(col & "1").Font.Size = 30
End Sub
显然这与 With
无关,但您的 With
仅在调用它的 sub/function 中具有上下文。它不会通过函数调用继续存在。
然后按名称对工作簿进行寻址。
我有一个在两个工作簿之间工作的宏,我有这个:
Dim wbmaster As Workbook 'name for master workbook
Dim wbtarget As Workbook 'name for student workbook
wbmaster.Sheets("Answers_Source").Range("h1:z160").Copy
wbtarget.Sheets("ANSWERS").Range("h1:z160").PasteSpecial
所以它确切地知道该做什么。