在excel中,如何用VBA将每列数据的输出为一个独立的文本文件txt

2024-11-03 10:05:05
推荐回答(2个)
回答1:

答:end()里面的数字是简写的,这样很不好辨认。强烈建议使用命名参数。

1、2、3、4代表xlToLeft、xlToRight、xlUp、xlDown。也就是点一个单元格,然后按“Ctrl+箭头”后指向的单元格。

我修改了这段代码,已验证了能正确导出。

Private Sub export()
    Application.ScreenUpdating = False
    Path = "E:\export"
    Dim nro&, nco&
    nco = Cells(1, Columns.Count).End(xlToLeft).Column
    For i = 1 To nco
        nro = Cells(Rows.Count, i).End(xlUp).Row
        Open Path & "\file" & i & ".txt" For Output As #1
        For Each cell In Range(Cells(1, i), Cells(nro, i))
            Print #1, cell
        Next
        Close #1
    Next
    Application.ScreenUpdating = True
    MsgBox "导出完成"
End Sub


回答2:

end(3) 和下面那个 end(1) 对调一下