Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
excel vba宏将csv文件合并到新的excel工作表中,并删除三行的后续标题_Excel_Vba - Fatal编程技术网

excel vba宏将csv文件合并到新的excel工作表中,并删除三行的后续标题

excel vba宏将csv文件合并到新的excel工作表中,并删除三行的后续标题,excel,vba,Excel,Vba,我从这里的代码开始:() 我还想删除随后重复的3行标题。请解释它在哪里创建excel工作表,使用什么名称,或者它正在退出子工作表?非常感谢您对代码进行少量更改以满足我的要求。我不确定这是否是您的问题,但 nextRow = .Range("A1").SpecialCells(xlCellTypeLastCell).Row + 1 可能会给你一个错误的结果 如果写入一个单元格,如果清除该单元格,该单元格将按xlCellTypeLastCell 此代码将向您显示可能出现的错误: Sub test(

我从这里的代码开始:()


我还想删除随后重复的3行标题。请解释它在哪里创建excel工作表,使用什么名称,或者它正在退出子工作表?非常感谢您对代码进行少量更改以满足我的要求。

我不确定这是否是您的问题,但

nextRow = .Range("A1").SpecialCells(xlCellTypeLastCell).Row + 1
可能会给你一个错误的结果

如果写入一个单元格,如果清除该单元格,该单元格将按
xlCellTypeLastCell

此代码将向您显示可能出现的错误:

Sub test()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets.Add(After:= _
         ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
ws.Name = "TmpSheet"
With ws
    a = .Range("A1").SpecialCells(xlCellTypeLastCell).Row
    MsgBox ("LastCell Is: " & a & vbCrLf & "Now I'll insert some data")
    .Range("A5") = "Test"
    .Range("B9") = "Test"
    MsgBox ("Now I'll clear inserted data")
    .Range("A5:B9").Clear
    a = .Range("A1").SpecialCells(xlCellTypeLastCell).Row
    MsgBox ("Now LastCell Is: " & a)
End With
Application.DisplayAlerts = False
    ws.Delete
Application.DisplayAlerts = True
End Sub
因此,请尝试使用一列,确保最后一行已填充,并使用:

nextRow = .Cells(Rows.Count, "B").End(xlUp).Row + 1 'Change "B" to your column

我不确定这是你的问题但是

nextRow = .Range("A1").SpecialCells(xlCellTypeLastCell).Row + 1
可能会给你一个错误的结果

如果写入一个单元格,如果清除该单元格,该单元格将按
xlCellTypeLastCell

此代码将向您显示可能出现的错误:

Sub test()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets.Add(After:= _
         ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
ws.Name = "TmpSheet"
With ws
    a = .Range("A1").SpecialCells(xlCellTypeLastCell).Row
    MsgBox ("LastCell Is: " & a & vbCrLf & "Now I'll insert some data")
    .Range("A5") = "Test"
    .Range("B9") = "Test"
    MsgBox ("Now I'll clear inserted data")
    .Range("A5:B9").Clear
    a = .Range("A1").SpecialCells(xlCellTypeLastCell).Row
    MsgBox ("Now LastCell Is: " & a)
End With
Application.DisplayAlerts = False
    ws.Delete
Application.DisplayAlerts = True
End Sub
因此,请尝试使用一列,确保最后一行已填充,并使用:

nextRow = .Cells(Rows.Count, "B").End(xlUp).Row + 1 'Change "B" to your column

最简单的一个:Shell(“cmd/c copy*.csv all.csv”,vbNormalFocus)我编写了这段代码,但它所做的只是打开命令窗口,其中包含提到的位置。我需要在那里键入此命令copy.csv all.csv如何更改代码以自行执行此操作。”Sub merge()Dim vPID As Variant myPath=“C:\Users\Downloads\merge”vPID=Shell(“cmd\C copy”&myPath&“.csv”&myPath&“all.csv”,vbNormalFocus)End Sub”以及如何删除重复的3行标题最简单的:Shell(“cmd/C copy*.csv all.csv”,vbNormalFocus)我写了这段代码,但它所做的只是打开命令窗口,其中包含所提到的位置。我需要在那里键入此命令copy.csv all.csv如何更改代码以自行执行此操作。”Sub merge()Dim vPID As Variant Dim myPath As Variant myPath=“C:\Users\Downloads\merge”vPID=Shell(“cmd\C copy”&myPath&“.csv”&myPath&“all.csv”,vbNormalFocus)End Sub”我如何删除重复的3行标题