ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: fatcat88888888

[求助] 怎样将一个工作簿指定区域复制到另一个工作簿新生成的以日期命名的表格里

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-28 21:05 | 显示全部楼层
liulang0808 发表于 2020-5-28 19:40
楼主查询一下怎么录制宏,然后按照描述的思路录制一段看看先

折腾了一个晚上,还是没搞掂,老提示错误……实在没办法了,只能熬夜一个个复制粘贴了,腱鞘炎痛的不行了……

TA的精华主题

TA的得分主题

发表于 2020-5-28 21:21 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
Sub 按钮7_Click()


    Set Rng = Range("I306:AY877")
    Workbooks.Open Filename:=ThisWorkbook.Path & "\数据汇总.xlsx"
    Sheets.Add After:=Sheets(Sheets.Count)
    Sheets(Sheets.Count).Name = Format(Date, "YYYYMMDD")
    ActiveSheet.[a1].Resize(Rng.Rows.Count, Rng.Columns.Count).Value = Rng.Value
    ActiveWorkbook.Save
    ActiveWorkbook.Close
End Sub

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-28 22:16 | 显示全部楼层
本帖最后由 fatcat88888888 于 2020-5-28 23:27 编辑

老师,从数据汇总提取基础数据的宏我试着编写了,基础数据的文件名称是按照”基础数据+每日日期”的格式编写,不知道有没有错。结果报错说对象不支持该属性或者办法,不知道问题在哪???


    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set wa = Workbooks.Open(ThisWorkbook.Path & "\基础数据" & Format(Date, "YYYYMMDD") & ".xlsm")
    Set Rng = wa.Range("I306:AY877")
    Workbooks.Open Filename:=ThisWorkbook.Path & "\数据汇总.xlsx"
    Sheets.Add After:=Sheets(2)
    Sheets(3).Name = Format(Date, "YYYYMMDD")
    Sheet.[a1].Resize(Rng.Rows.Count, Rng.Columns.Count).Value = Rng.Value
    Workbook.Save
    Workbook.Close
End Sub



TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-28 23:24 | 显示全部楼层

老师,从数据汇总提取基础数据的宏,我自己写了,名称的问题应该没问题,老师可以帮我看看,但是运算过程总是提示对象不支持属性或办法,代码如下,老师能否帮我看下



Sub 行业()

    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set wa = Workbooks.Open(ThisWorkbook.Path & "\.基础数据" & Format(Date, "YYYYMMDD") & ".xlsm")
    Set Rng = wa.Range("I306:AY877")
    Workbooks.Open Filename:=ThisWorkbook.Path & "\.数据汇总.xlsm"
    Sheets.Add After:=Sheets(2)
    Sheets(3).Name = Format(Date, "YYYYMMDD")
    Sheet.[a1].Resize(Rng.Rows.Count, Rng.Columns.Count).Value = Rng.Value
    Workbook.Save
    Workbook.Close
End Sub

TA的精华主题

TA的得分主题

发表于 2020-5-29 08:32 | 显示全部楼层
fatcat88888888 发表于 2020-5-28 23:24
老师,从数据汇总提取基础数据的宏,我自己写了,名称的问题应该没问题,老师可以帮我看看,但是运算过程 ...

你把你的包含宏代码的相关工作簿 重新发一下

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-29 08:59 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
wp231957 发表于 2020-5-29 08:32
你把你的包含宏代码的相关工作簿 重新发一下

老师您好,还请老师帮忙修改,对vba一窍不通,最近在实习,领导让处理一些数据,复制粘贴到腱鞘炎,希望老师能帮忙制作一下。这次实习也让我意识到vba的好处,实习完回校一定好好学习,万分感谢

1、能否点击基础数据簿的表里的按钮,将I306:AY877区域的数据以文本形式复制粘贴到数据汇总簿的第三个表格,即在公司数据后面生成新表格,表格名称以点击操作当天的日期,比如今天2020-05-28,能否以20200528的格式即YYYYMMDD的格式作为文件名,内容为复制的内容。
2、点击在数据汇总簿行业数据表里的按钮,将I基础数据簿中I306:AY877区域的数据以文本形式复制粘贴到数据汇总簿的第三个表格,即在公司数据后面生成新表格,表格名称以点击操作当天的日期,比如今天2020-05-28,能否以20200528的格式即YYYYMMDD的格式作为文件名,内容为复制的内容。
感恩老师

新需求.zip

68.78 KB, 下载次数: 6

TA的精华主题

TA的得分主题

发表于 2020-5-29 10:17 | 显示全部楼层
fatcat88888888 发表于 2020-5-29 08:59
老师您好,还请老师帮忙修改,对vba一窍不通,最近在实习,领导让处理一些数据,复制粘贴到腱鞘炎,希望 ...
  1. Sub 行业()
  2.     Application.ScreenUpdating = False
  3.     Application.DisplayAlerts = False
  4.     Set wa = Workbooks.Open(ThisWorkbook.Path & "\基础数据" & Format(Date, "YYYYMMDD") & ".xlsx")
  5.     Windows("基础数据" & Format(Date, "YYYYMMDD") & ".xlsx").Activate
  6.     Sheets(1).Activate
  7.     Set Rng = Range("I306:AY877")
  8.     Workbooks(ThisWorkbook.Name).Activate
  9.     ''''
  10.     flag = 0
  11.     For Each sht In Sheets      '检索目标工作表是否在sheets集合
  12.        If sht.Name = Format(Now(), "yyyymmdd") Then
  13.           flag = 1
  14.           MsgBox Format(Now(), "yyyymmdd") & "表已经存在,如果是测试数据,请删除该表 后 重新运行本程序"
  15.           End
  16.        End If
  17.     Next
  18.     If flag = 0 Then
  19.        Sheets.Add(after:=Sheets(Sheets.Count)).Name = Format(Now(), "yyyymmdd")
  20.     End If
  21.     ''''
  22.     Sheets(Sheets.Count).Activate
  23.     Range("a1").Resize(Rng.Rows.Count, Rng.Columns.Count).Value = Rng.Value
  24.     Workbooks(ThisWorkbook.Name).Save
  25.     'Application.Quit
  26.    
  27. End Sub
复制代码


1、你表中没数据,所以代码是否正确,我也不知道
2、你为啥弄个模板XLTM  而不是存储宏的XLSM  我这代码在xltm中无法通过,在xlsm中可以运行

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-29 10:40 | 显示全部楼层
wp231957 发表于 2020-5-29 10:17
1、你表中没数据,所以代码是否正确,我也不知道
2、你为啥弄个模板XLTM  而不是存储宏的XLSM  我这 ...

老师,可以了,万分感谢

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-29 10:43 | 显示全部楼层
wp231957 发表于 2020-5-29 10:17
1、你表中没数据,所以代码是否正确,我也不知道
2、你为啥弄个模板XLTM  而不是存储宏的XLSM  我这 ...

老师,如果是数据汇总里面已经存在了这个以日期命名的表格,能否将数据直接覆盖到该表格里里,也就是如果没有该日期的表格,就新生成。如果已经存在,就将数据覆盖到该命名的表格里。

TA的精华主题

TA的得分主题

发表于 2020-5-29 11:00 | 显示全部楼层
fatcat88888888 发表于 2020-5-29 10:43
老师,如果是数据汇总里面已经存在了这个以日期命名的表格,能否将数据直接覆盖到该表格里里,也就是如果 ...

可以,,略作改动

  1. Sub 行业()
  2.     Application.ScreenUpdating = False
  3.     Application.DisplayAlerts = False
  4.     Set wa = Workbooks.Open(ThisWorkbook.Path & "\基础数据" & Format(Date, "YYYYMMDD") & ".xlsx")
  5.     Windows("基础数据" & Format(Date, "YYYYMMDD") & ".xlsx").Activate
  6.     Sheets(1).Activate
  7.     Set Rng = Range("I306:AY877")
  8.     Workbooks(ThisWorkbook.Name).Activate
  9.     ''''
  10.     flag = 0
  11.     For Each sht In Sheets      '检索目标工作表是否在sheets集合
  12.        If sht.Name = Format(Now(), "yyyymmdd") Then
  13.           flag = 1
  14.           Sheets(Format(Now(), "yyyymmdd")).Activate
  15.           Range("a1:ay10000").Clear
  16.           Range("a1").Resize(Rng.Rows.Count, Rng.Columns.Count).Value = Rng.Value
  17.           Exit For
  18.        End If
  19.     Next
  20.     If flag = 0 Then
  21.        Sheets.Add(after:=Sheets(Sheets.Count)).Name = Format(Now(), "yyyymmdd")
  22.     End If
  23.     ''''
  24.     Sheets(Sheets.Count).Activate
  25.     Range("a1").Resize(Rng.Rows.Count, Rng.Columns.Count).Value = Rng.Value
  26.     Workbooks(ThisWorkbook.Name).Save
  27.     'Application.Quit
  28.    
  29. End Sub
复制代码

评分

1

查看全部评分

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

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-3-29 00:14 , Processed in 0.042059 second(s), 9 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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