我有两个文件,重要的是文件类型保持不变。首先,Stack.xlsm
只有一行数据。下面的函数取两个数据点,并将它们保存到返回的数组中。因此,单元格A5=StudentData(1),B5=StudentData(2)
Public Function StudentData(Index As Integer)
Dim StudentID As Double
Dim StudentScore As Double
Dim IntA(1 To 2) As Double
StudentID = ActiveSheet.Cells(2, 1)
StudentScore = ActiveSheet.Cells(2, 2)
IntA(1) = StudentID
IntA(2) = StudentScore
StudentData = IntA(Index)
End Function
第二个是Test.xlsx。我试图将这个文件保存为.xlsx,但不知何故向其中写入了数据(这应该是运行所需sub后的结果):
我想覆盖此工作表中的单元格,使A1=“ID:“& StudentData(1),B1=“Score:“&StudentData(2),即调用Stack.xlsm中定义的函数
我假设这将在Stack.xlsm中实现,如下所示:
Public Sub DataTransfer()
Workbooks("Test.xlsx").Worksheets("Sheet1").cell(A1) = "ID:" & StudentData(1)
Workbooks("Test.xlsx").Worksheets("Sheet1").cell(B1) = "Score:" & StudentData(2)
End Sub
语法是错误的,但我希望它表明我的意图。
1条答案
按热度按时间7bsow1i61#
复制值
Dim Student(1 To 2) As Double
时(或者在你的函数Dim IntA(1 To 2) As Double
中),你已经决定了你将通过索引来访问值,即Student(1)
和Student(2)
。没有必要(可能)为此使用索引参数。一个参数。
没有参数。
"一个想法"
"终于"