0

每次我运行下面的代码时,它应该首先将 Import_R 表中的第一列粘贴到 Organise_R 表中的第一列。然而,由于某种原因,每次我启动它时,代码都会粘贴到 Organise_R 中上一次运行停止的列中。我需要以某种方式告诉代码始终从organise_R 表的第一列开始。我试图将 b 定义为 1 但显然与第 4 行冲突?请帮忙!

For a = 1 To 60

If Application.WorksheetFunction.CountA(Excel.Sheets("Import_R").Columns(a)) > 0 Then

    Excel.Sheets("Import_R").Columns(a).Copy

   b = Excel.Sheets("Organise_R").UsedRange.Columns.Count

    Excel.Sheets("Organise_R").Select



    If Application.WorksheetFunction.CountA(Excel.Sheets("Organise_R").Columns(b)) > 0 Then b = b + 1


        Excel.Sheets("Organise_R").Columns(b).EntireColumn.Select
        Excel.ActiveSheet.Paste

        Excel.Application.CutCopyMode = False
        Selection.TextToColumns Destination:=Cells(1, b), DataType:=xlDelimited, _
                TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
                Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
                :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
                Array(7, 1), Array(8, 1)), TrailingMinusNumbers:=True

End If



Next a
4

1 回答 1

0

如果代码总是应该从“Organize_R”的第一列开始,那么为什么要使用下面的代码?

b = Excel.Sheets("Organise_R").UsedRange.Columns.Count

为什么不

Excel.Sheets("Organise_R").ClearContents
b = 1

?

于 2012-11-16T16:42:20.770 回答