将excel表里的数据用vba 导出 到一个 txt 文本中 表内有12列数据 若干行 请教导出代码 名字地点可固定
因表中加了辅助数据所以需导出指定12列数据12列是连续的不间隔导出格式如同复制粘贴一般成行成列另表中有多个如020几的这种数据导出后保留0几格式...
因表中加了辅助数据 所以 需导出指定 12列 数据 12列是连续的 不间隔 导出格式 如同复制粘贴一般 成行成列 另 表中有多个如 02 0几的这种数据 导出后 保留 0几 格式
展开
4个回答
2013-01-14
展开全部
Sub macro1()
Dim arr(2), i As Long, j As Long, s() As String
arr(0) = [c1].CurrentRegion
arr(1) = [q1].CurrentRegion
arr(2) = [ai1].CurrentRegion
For i = 0 To 2
ReDim s(1 To UBound(arr(i)))
For j = 1 To UBound(arr(i))
s(j) = Join(Application.Index(arr(i), j, 0), " ")
Next
Open "d:\" & i & ".txt" For Binary As #1
Put #1, , Join(s, vbCrLf)
Close #1
Shell "notepad d:\" & i & ".txt", vbNormalFocus
Next
MsgBox "ok"
End Sub
0的问题没有解决 还请其他高手提点
Dim arr(2), i As Long, j As Long, s() As String
arr(0) = [c1].CurrentRegion
arr(1) = [q1].CurrentRegion
arr(2) = [ai1].CurrentRegion
For i = 0 To 2
ReDim s(1 To UBound(arr(i)))
For j = 1 To UBound(arr(i))
s(j) = Join(Application.Index(arr(i), j, 0), " ")
Next
Open "d:\" & i & ".txt" For Binary As #1
Put #1, , Join(s, vbCrLf)
Close #1
Shell "notepad d:\" & i & ".txt", vbNormalFocus
Next
MsgBox "ok"
End Sub
0的问题没有解决 还请其他高手提点
展开全部
Sub test()
Dim i%, j%, fPath$, myStr$
fPath = "D:\Test2.txt"
i = 1
Do
For j = 1 To 12
myStr = myStr & Cells(i, j) & ","
Next j
i = i + 1
Loop Until Cells(i, 1) = ""
Open fPath For Output As #1
Print #1, myStr
Close
End Sub
Dim i%, j%, fPath$, myStr$
fPath = "D:\Test2.txt"
i = 1
Do
For j = 1 To 12
myStr = myStr & Cells(i, j) & ","
Next j
i = i + 1
Loop Until Cells(i, 1) = ""
Open fPath For Output As #1
Print #1, myStr
Close
End Sub
追问
你好 我需要的结果 是跟从excel里复制粘贴到txt中的 格式相同 不需要逗号 需要成行成列
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
另存为 文本
追问
因为表中还有其他数据 我只需要 其中指定的 12列数据
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
为啥要导出?复制粘贴不行吗?
追问
数据较多 想提高导出 速度
追答
多道什么程度?没遇到过因为数据多要导出的情况。汗一个。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |