Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2098|回复: 6

[已解决]复制A列另存为txt文件

[复制链接]
发表于 2016-6-6 14:04 | 显示全部楼层 |阅读模式
本帖最后由 26827557 于 2016-6-7 11:46 编辑

老师好!下面代码,复制整张工作表可行,但我想只复制A列另存为txt文件不行,能否帮我检查下吗?谢谢!

Sub ggsmart()
   Application.ScreenUpdating = False

   ActiveSheet.Copy '复制整个工张表也可以
'   ActiveSheet.Range("a1").CurrentRegion.Columns.Count.Copy '复制A列不能实现

   ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\记事本.txt", FileFormat:=xlText, CreateBackup:=False
   ActiveWorkbook.Close False
   Application.ScreenUpdating = True
End Sub

最佳答案
2016-6-6 20:20
Sub test()
    Dim A, i
    A = Range("a1:j" & Range("a65536").End(xlUp).Row)
    Open "d:\1.txt" For Output As #1
    For i = 1 To UBound(A)
        Print #1, Format(A(i, 1), "00") & A(i, 2)
    Next i
    Close #1
End Sub



黄是A列,绿是B列。
1楼附件B列也没内容呀?

复制到txt格式文件.rar

31.36 KB, 下载次数: 11

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2016-6-6 15:02 | 显示全部楼层
QQ截图20160606145343.jpg


复制A列另存为txt文件,没说错吧?
回复

使用道具 举报

 楼主| 发表于 2016-6-6 16:55 | 显示全部楼层
爱疯 发表于 2016-6-6 15:02
复制A列另存为txt文件,没说错吧?

是啊,我要改成只复制某列,比如A列的啊,老师
回复

使用道具 举报

发表于 2016-6-6 17:05 | 显示全部楼层
本帖最后由 爱疯 于 2016-6-6 17:21 编辑

Sub WriteText1()
    Dim A, i, c
    c = Cells(1, "A").Column
    A = Range("a1:j" & Range("a65536").End(xlUp).Row)

    Open "d:\1.txt" For Output As #1
    For i = 1 To UBound(A)
        Print #1, Format(A(i, c), "00")
    Next i
    Close #1
End Sub


如果是其它的列,修改颜色位置。

回复

使用道具 举报

 楼主| 发表于 2016-6-6 19:58 | 显示全部楼层
爱疯 发表于 2016-6-6 17:05
Sub WriteText1()
    Dim A, i, c
    c = Cells(1, "A").Column

老师你好!非常感谢你,你这句中有些不明白,你可以帮我解答下吗?
Sub WriteText1()
    Dim A, i, c
    c = Cells(1, "A").Column ‘下句的A相当于是一个单元格区域,如果我要导出A列和B列,该怎么写呢?
    A = Range("a1:j" & Range("a65536").End(xlUp).Row)


    Open "d:\1.txt" For Output As #1
    For i = 1 To UBound(A) '怎么导出二维数组呢?
        Print #1, Format(A(i, c), "00") '我试了如果是1的话,则导出是01。我想导出仍是1的话,该定义哪种呢?
    Next i
    Close #1
End Sub


回复

使用道具 举报

发表于 2016-6-6 20:20 | 显示全部楼层    本楼为最佳答案   
Sub test()
    Dim A, i
    A = Range("a1:j" & Range("a65536").End(xlUp).Row)
    Open "d:\1.txt" For Output As #1
    For i = 1 To UBound(A)
        Print #1, Format(A(i, 1), "00") & A(i, 2)
    Next i
    Close #1
End Sub



黄是A列,绿是B列。
1楼附件B列也没内容呀?
回复

使用道具 举报

 楼主| 发表于 2016-6-7 11:46 | 显示全部楼层
爱疯 发表于 2016-6-6 20:20
Sub test()
    Dim A, i
    A = Range("a1:j" & Range("a65536").End(xlUp).Row)

谢谢老师,明白了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-26 21:22 , Processed in 0.539181 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表