导出文本文件excel
我试图做一个命令button,将我的表格导出到一个制表符分隔的文本文件,并添加一些dynamic标题。 我想要标题说:1 / x 2 / x 3 / x 4 / x等等,其中x是列的总量
这是我从一个网站得到的代码:
Private Sub CommandButton1_Click() Dim myFile As String, rng As Range, cellValue As Variant, i As Integer, j As Integer myFile = Application.DefaultFilePath & "\projekt.txt" Set rng = Selection Open myFile For Output As #1 For i = 1 To rng.Rows.Count For j = 1 To rng.Columns.Count cellValue = rng.Cells(i, j).Value If j = rng.Columns.Count Then Write #1, cellValue Else Write #1, cellValue, End If Next j Next i Close #1 End Sub
问题是这取决于我标记填充的单元格它的工作,也只会产生逗号分隔的文本文件,我希望制表符分隔文件没有“”。 也不会产生标题。
1/5 2/5 3/5 4/5 5/5 x(total) rows Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data
它只输出选中的单元格,因为在你的代码中你有第4行
Set rng = Selection
如果您想要始终输出特定范围,例如A1:E100,则可以将此行更改为,
Set rng = Range("A1:E100")
如果这个范围包含标题,那么你的导出也会有标题。
第二个问题,
这是逗号分隔,因为你有
Write #1, cellValue,
为了让它的标签demilited,改变这一行
Write #1, cellValue & vbTab
这应该是写入部分的完整代码, vbNewline
意味着“新行”字符(或vbCrLf
也可以), vbTab
是制表符
If j = rng.Columns.Count Then Write #1, cellValue & vbNewLine Else Write #1, cellValue & vbTab End If