24小时热门版块排行榜    

查看: 836  |  回复: 4

mystar

金虫 (文坛精英)

[交流] 【求助】excel宏问题【已解决】

目的是将一个excel文件追加到另一个excel文件

-----------------
Sub MergeSheets()

    Dim SrcBook As Workbook, SrcSht As Worksheet

    Dim Filename As Variant

    ' Get the filename
    Filename = Application.GetOpenFilename("Excel Files (*.xls), *.xls,CSV Files (*.csv), *.csv,Text Files (*.txt), *.txt,PRN Files (*.prn), *.prn", 1, "请选择追加记录的来源档"
    If Filename = False Then
        Exit Sub
    End If
   
    Set SrcBook = Workbooks.Open(Filename)
   
    '如果两个档案的工作表数量不等则取消执行
    If ThisWorkbook.Sheets.Count <> SrcBook.Sheets.Count Then
        MsgBox "两个档案的工作表数量不等" & vbCrLf & _
        ThisWorkbook.Name & " = " & ThisWorkbook.Sheets.Count & "个工作表" & vbCrLf & _
        SrcBook.Name & " = " & SrcBook.Sheets.Count & "个工作表"
        SrcBook.Close
        Exit Sub
    End If
   
    n = 1
   
    Application.ScreenUpdating = False

    For Each SrcSht In SrcBook.Worksheets
        '取得复制范围,如果有标题行不复制,请更改 "A1:IV",例如 "A2:IV"
        SrcSht.Range("A1:IV" & SrcSht.Range("A65536".End(xlUp).Row).Copy
        
        ThisWorkbook.Worksheets(n).Activate

        Range("A65536".End(xlUp).Offset(1, 0).PasteSpecial

        Application.CutCopyMode = False
        
        Range("A1".Activate
        
        n = n + 1
    Next

    ThisWorkbook.Worksheets(1).Activate
    SrcBook.Close
    Application.ScreenUpdating = True

End Sub
------------------------
有一个出错信息

改成
--------------

------------------
Sub MergeSheets()

    Dim SrcBook As Workbook, SrcSht As Worksheet

    Dim Filename As Variant

    ' Get the filename
    Filename = Application.GetOpenFilename("Excel Files (*.xls), *.xls,CSV Files (*.csv), *.csv,Text Files (*.txt), *.txt,PRN Files (*.prn), *.prn", 1, "请选择追加记录的来源档"
    If Filename = False Then
        Exit Sub
    End If
   
    Set SrcBook = Workbooks.Open(Filename)
   
    '如果两个档案的工作表数量不等则取消执行
    If ThisWorkbook.Sheets.Count <> SrcBook.Sheets.Count Then
        MsgBox "两个档案的工作表数量不等" & vbCrLf & _
        ThisWorkbook.Name & " = " & ThisWorkbook.Sheets.Count & "个工作表" & vbCrLf & _
        SrcBook.Name & " = " & SrcBook.Sheets.Count & "个工作表"
        SrcBook.Close
        Exit Sub
    End If
   
    n = 1
   
    Application.ScreenUpdating = False

    For Each SrcSht In SrcBook.Worksheets
        '取得复制范围,如果有标题行不复制,请更改 "A1:IV",例如 "A2:IV"

On Error Resume Next
        If Len(SrcSht.Names("TITLE".Name) <> 0 Then
            Application.Goto Reference:=SrcSht.Range("TITLE"
            Selection.EntireRow.Hidden = True
        End If

        SrcSht.Range("A1:IV" & SrcSht.Range("A65536".End(xlUp).Row).Copy
        
        ThisWorkbook.Worksheets(n).Activate

        Range("A65536".End(xlUp).Offset(1, 0).PasteSpecial

        Application.CutCopyMode = False
        
        Range("A1".Activate
        
        n = n + 1
    Next

    ThisWorkbook.Worksheets(1).Activate
    SrcBook.Close  SaveChanges:=False
    Application.ScreenUpdating = True

End Sub
---------------

没有出错信息,但第一行会有问题。

麻烦再改改

[ Last edited by 余泽成 on 2010-12-12 at 20:31 ]
回复此楼
不要使自己麻木于制度化当中,而抛弃了从前的美好事物和希望。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mystar

金虫 (文坛精英)

ajian04(金币+1):谢谢参与交流~ 2010-10-21 17:39:03
ajian04(金币-1):不好意思, 在楼上已经奖励过了,现收回这个金币,谢谢啊,呵呵 2010-10-21 17:39:59
ajian04:谢谢参与交流~ 2010-10-21 17:40:10
第一个宏的SrcBook.Close
源excel文件关不了,可能是错在这里。

怎样关掉源excel文件?
不要使自己麻木于制度化当中,而抛弃了从前的美好事物和希望。
2楼2010-10-21 17:36:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Lily_melon

铜虫 (小有名气)

看不懂呀
啊啊啊啊
3楼2010-10-23 09:26:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
mystar(金币+10): ------------- 2011-04-25 18:54:31
4楼2010-12-09 00:56:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mystar

金虫 (文坛精英)

已经解决。工作表个数要相同
不要使自己麻木于制度化当中,而抛弃了从前的美好事物和希望。
5楼2010-12-09 01:02:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 mystar 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 311求调剂 +6 冬十三 2026-03-15 6/300 2026-03-16 08:00 by wang_dand
[考研] 材料与化工一志愿南昌大学327求调剂推荐 +6 Ncdx123456 2026-03-13 7/350 2026-03-16 07:44 by L135790
[考研] 0856专硕279求调剂 +5 加油加油!? 2026-03-15 5/250 2026-03-15 11:58 by 2020015
[考研] 22408总分284求调剂 +3 InAspic 2026-03-13 3/150 2026-03-15 11:10 by zhq0425
[考研] 289求调剂 +5 步川酷紫123 2026-03-11 5/250 2026-03-15 00:45 by kruisytel
[考研] 中科大材料专硕319求调剂 +3 孟鑫材料 2026-03-13 3/150 2026-03-14 18:10 by houyaoxu
[考研] 求调剂,药学 +3 归零lbm 2026-03-09 5/250 2026-03-14 02:21 by JourneyLucky
[考研] 一志愿浙江大学0856材料与化工求调剂 +4 yansheng@211 2026-03-09 5/250 2026-03-14 02:10 by JourneyLucky
[考研] 一志愿北京化工大学材料与化工296分求调剂 +16 稻妻小编 2026-03-09 18/900 2026-03-14 02:00 by JourneyLucky
[考研] 2026考研调剂+本科延边大学+山东大学+生物化学与分子生物学+有项目经验 +3 ccdsscjy 2026-03-10 3/150 2026-03-14 00:12 by JourneyLucky
[考研] 308求调剂 +5 是Lupa啊 2026-03-11 5/250 2026-03-13 22:13 by JourneyLucky
[考研] 求材料调剂 085600英一数二总分302 前三科235 精通机器学习 一志愿哈工大 +4 林yaxin 2026-03-12 4/200 2026-03-13 22:04 by 星空星月
[考研] 一志愿西南交大,材料专硕317求调剂 +5 lx8568 2026-03-11 5/250 2026-03-13 21:43 by peike
[考研] 0703化学一志愿211 总分320求调剂 +5 玛卡巴卡啊哈 2026-03-11 5/250 2026-03-13 21:40 by JourneyLucky
[考研] 329求调剂 +3 miaodesi 2026-03-12 4/200 2026-03-13 20:53 by 18595523086
[硕博家园] 085600 260分求调剂 +3 天空还下雨么 2026-03-13 5/250 2026-03-13 18:46 by 天空还下雨么
[考研] 求调剂 +5 一定有学上- 2026-03-12 5/250 2026-03-13 18:31 by ms629
[考研] 0856化工原理 +6 z2839474511 2026-03-10 6/300 2026-03-13 10:41 by houyaoxu
[考研] 08食品或轻工求调剂,本科发表3篇sci一区top论文,一志愿南师大食品科学与工程 +3 我是一个兵, 2026-03-10 3/150 2026-03-13 10:21 by Yuyi.
[考研] 一志愿河海大学085900土木水利专硕279求调剂不挑专业 +4 SunWwWwWw 2026-03-10 8/400 2026-03-13 02:23 by SunWwWwWw
信息提示
请填处理意见