我们当然感谢所有的帮助或建议......我正在使用两本独立的工作簿。
工作簿X是我的"订单表格",其中包含相关列: 列A:项目编号 B栏:数量
我想仅在数量>时提取商品编号和数量值。 0或<> NULL。
然后将此数据发送到工作簿Y,其中包含: 栏B:项目编号 C栏:数量
以下是我尝试过的代码的一种变体,我大约需要5个小时,并且想法不足。
谢谢!
Dim x As Workbook
Dim y As Workbook
'Open both workbooks
Set x = Workbooks.Open(Me.txtSelect)
Set y = Workbooks.Open(Me.txtOutput)
Dim i As Integer
i = 1
While i < 200
'Extract data from sheet x into sheet y
If x.Sheets("Order Form").Cells(i, 2).Value > 0 Then
x.Sheets("Order Form").Cells(i, 1).Value = y.Sheets("UploadTemplate").Cells(B2 + i).Value
x.Sheets("Order Form").Cells(i, 2).Value = y.Sheets("UploadTemplate").Cells(C2 + i).Value
Else
End If
i = i + 1
Wend
这是我用的原始代码代替&#34;而&#34;,但获得了所有值:
If x.Sheets("Order Form").Range("B9").Value > 0 Then
x.Sheets("Order Form").Range("A9:B200").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=x.Sheets("Order Form").Range("A11:B11"), CopyToRange:=y.Sheets("UploadTemplate").Range("B2:C2") _
, Unique:=False
End If
答案 0 :(得分:0)
试试这个:
Dim x As Workbook
Dim y As Workbook
dim yi as integer
'Open both workbooks
Set x = Workbooks.Open(Me.txtSelect)
Set y = Workbooks.Open(Me.txtOutput)
Dim i As Integer
i = 1
yi=2
While i < 200
'Extract data from sheet x into sheet y
If x.Sheets("Order Form").Cells(i, 2).Value > 0 Then
y.Sheets("UploadTemplate").Cells(yi,2).Value=x.Sheets("Order Form").Cells(i, 1).Value
y.Sheets("UploadTemplate").Cells(yi,3).Value=x.Sheets("Order Form").Cells(i, 2).Value
yi = yi + 1
End If
i = i + 1
Wend
你需要第二个工作簿上的第二个计数器,好像你是在第一个工作簿中跳过行,因为它们是空白的,你不想在第二个工作簿中做同样的事情(我假设)
您还需要确保从第一张纸上获取值,并将它们分配给第二张纸。例如。 Y从X - Y = X
获取值