我实际上以编程方式创建工作表,并以编程方式添加带有与这些工作表相关联的宏的按钮。我想做的是,当我单击按钮时,包含按钮的工作表的内容将复制到另一个工作表。
实际上,有两件事使我感到困惑:首先,我不了解与按钮关联的宏是在创建工作表的文件中还是在创建的工作表本身中(我的意思是它的代码已找到)。
这是我创建的添加带有关联宏的按钮的代码:
With newWorkBook.Worksheets(1).Buttons
.Add 350, 75, 173.25, 41.25
.OnAction = "'" & ThisWorkbook.FullName & "'!export_Click"
.Caption = "Exporter la fiche"
End With
newWorkBook.Worksheets("Feuil1").Name = "Valeurs"
该checkPVC_Click
Sub位于用于生成工作表的Excel文件中的模块中。
其次,在应该将工作表的内容复制到另一个宏的宏中,我不知道如何在代码中以不同的方式引用两个工作表(源和目标)。
在下面的代码中:
Dim newWorkBook As Workbook
Dim createdSheetColumnsTab(100) As String
Dim col As Integer
col = Cells(1, 8).Value
Set newWorkBook1 = Workbooks.Add
newWorkBook1.Worksheets("Feuil1").Cells(1, 1).Value = "Stat"
newWorkBook1.Worksheets("Feuil1").Cells(2, 1) = ActiveWorkbook.Worksheets("Valeurs").Cells(12, 1)
在此行中,col = Cells(1, 8).Value
我访问要复制的工作表的内容,在此行中,newWorkBook1.Worksheets("Feuil1").Cells(1, 1).Value = "Stat"
我访问“目标”工作表的内容,但我不知道如何引用第一个工作表的内容在下面的代码中为了复制内容。
我希望我很清楚,如有必要,我可以增加更多的精度,抱歉,我不精通英语,所以我很难解释这个问题。
您可以将保留Sub checkPVC_Click
在原始工作簿中。只需确保提供具有该宏的文件的完整路径和名称即可。例如。请确保运行该宏的文件至少保存了一次。
Sub Sample()
Dim NewWorkbook As Workbook
Set NewWorkbook = Workbooks.Add
With NewWorkbook.Worksheets(1).Buttons
.Add 350, 15, 173.25, 41.25
.OnAction = "'" & ThisWorkbook.FullName & "'!checkPVC_Click"
End With
End Sub
Sub checkPVC_Click()
MsgBox "a"
End Sub
关于第二个问题,您需要完全限定该Cells
对象,以便它知道您要指代哪个单元格。
ThisWorkbook
将引用工作簿中托管代码的单元格。
Activeworkbook
将引用当前处于活动状态的工作簿中的单元格。
编辑:后续评论。这是您要尝试的吗?
Sub Sample()
Dim newWorkBook As Workbook
Dim ws As Worksheet
Set newWorkBook = Workbooks.Add
Set ws = newWorkBook.Sheets(1)
ws.Name = "Valeurs"
With ws.Buttons
.Add 350, 15, 173.25, 41.25
.OnAction = "'" & ThisWorkbook.FullName & "'!checkPVC_Click"
End With
End Sub
Sub checkPVC_Click()
Dim OldWorkbook As Workbook, newWorkBook As Workbook
Dim createdSheetColumnsTab(100) As String
Set OldWorkbook = ActiveWorkbook
Set newWorkBook1 = Workbooks.Add
newWorkBook1.Worksheets("Feuil1").Cells(1, 1).Value = "Stat"
newWorkBook1.Worksheets("Feuil1").Cells(2, 1) = OldWorkbook.Worksheets("Valeurs").Cells(12, 1)
End Sub
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句