Excel精英培训网

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

[已解决]谢谢爱疯老师,外部数据导入出错

[复制链接]
发表于 2010-11-9 17:53 | 显示全部楼层 |阅读模式

kJpClIF5.rar (20.33 KB, 下载次数: 42)

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2010-11-9 20:41 | 显示全部楼层

回复:(lhj323323)[求助]外部数据导入出错

sArr = Split(StrConv(InputB(LOF(1), 1), vbUnicode), vbLf)

是否是上面这一句有问题,需要改?

回复

使用道具 举报

发表于 2010-11-9 21:38 | 显示全部楼层

NDESTY9Q.rar (13.88 KB, 下载次数: 5)

回复

使用道具 举报

 楼主| 发表于 2010-11-10 00:00 | 显示全部楼层

QUOTE:
以下是引用爱疯在2010-11-9 21:38:00的发言:


这样改了,行吗?

如果有其它条件,可能还要修改。

[em09]

Sub a()
    Dim sh As Worksheet
    Dim p As String, f As String

    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    For Each sh In Sheets
        If sh.Name <> "首页" Then sh.Delete
    Next
    Application.DisplayAlerts = True

    p = ThisWorkbook.Path
    f = Dir(ThisWorkbook.Path & "\*.txt")
    Do While f <> ""
        Sheets.Add after:=Sheets(Sheets.Count)
        With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & p & "\" & f, Destination:=[A1])
            ActiveSheet.Name = Left(f, Len(f) - 4)
            .Refresh BackgroundQuery:=False
        End With
        f = Dir
    Loop
    Sheets(1).Select
    Application.ScreenUpdating = True
End Sub

爱疯老师:

由于模板内除了首页这个工作表和外部导入的两张工作表,我还需要在模板内保留其它的多个工作表,能否将程序改为,不要增加或是删除既定的工作表?

或是在导入外部数据前,只将模板中的存放这两个外部数据的工作表删除,但模板内其它的工作表给保留?

[此贴子已经被作者于2010-11-10 0:07:13编辑过]
回复

使用道具 举报

发表于 2010-11-10 00:22 | 显示全部楼层    本楼为最佳答案   


Sub a()
    Dim p As String, f As String, s As String

    Application.ScreenUpdating = False
    p = ThisWorkbook.Path
    f = Dir(p & "\*.txt")
    Do While f <> ""
        s = Left(f, Len(f) - 4)
        On Error Resume Next
        Application.DisplayAlerts = False
        Sheets(s).Delete
        Application.DisplayAlerts = True
        On Error GoTo 0
        Sheets.Add after:=Sheets(Sheets.Count)
        ActiveSheet.Name = s
        With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & p & "\" & f, Destination:=[A1])
            .Refresh BackgroundQuery:=False
        End With
        f = Dir
    Loop
    Sheets(1).Select
    Application.ScreenUpdating = True
End Sub

[em09]

[em09]
回复

使用道具 举报

发表于 2010-11-10 00:37 | 显示全部楼层

跟来学习
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-24 13:18 , Processed in 0.321146 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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