如何在数组中返回多个值-Excel VBA

问题描述 投票:0回答:1

我正在尝试返回存储在数组中的多个值。 “我不太确定如何描述它,但是我想做的是输出例如A1中的0,B1中的37.2,C1中的5.51,D1中的0.498,A2中的4.17,B2中的36.7,等等。

我当前的代码是

For j = 1 to nw
    For k = 1 to 4
       tWB.Sheets("Data").Cells(j, k) = A(j)
    Next k
Next j

这是我第一次发布,所以我不确定发布的礼仪,因此,如果需要更多信息,我可以尝试提供。

这是完整的代码

Option Explicit
Option Base 1
Sub DataMerge()
Dim FileNames As Variant, A() As Variant
Dim i As Integer, nw As Integer, j As Integer, k As Integer
Dim UserRange As Range, ImportRange As String
Dim tWB As Workbook, aWB As Workbook
Set tWB = ThisWorkbook
FileNames = Application.GetOpenFilename(FileFilter:="Excel Filter(*.csv),*.csv", Title:="Open File(s)", MultiSelect:=True)
Workbooks.Open FileNames(1)
Set UserRange = Application.InputBox(Prompt:="Select Range: ", Title:="Import Range", Type:=8)
ImportRange = UserRange.Address
nw = UBound(FileNames)
ReDim A(nw) As Variant
For i = 1 To nw
    Workbooks.Open FileNames(i)
    Set aWB = ActiveWorkbook
    A(i) = aWB.Sheets(1).Range(ImportRange)
    aWB.Close SaveChanges:=False
Next i

tWB.Activate
For j = 1 to nw
    For k = 1 to 4
       tWB.Sheets("Data").Cells(j, k) = A(j)
    Next k
Next j

结束子

我正在尝试返回存储在数组中的多个值。我不太确定如何描述它,但是我想做的是输出如下值:A1中的0,B1中的37.2,C1中的5.51,D1中的0.498,...中的4.17 ...

arrays excel vba variant
1个回答
0
投票
您的代码非常接近。相反:
© www.soinside.com 2019 - 2024. All rights reserved.