乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 用<em>VBA</em>实现在表格中输入内容后,自动去另一个<em>EXCEL&l

用<em>VBA</em>实现在表格中输入内容后,自动去另一个<em>EXCEL&l

作者:乔山办公网日期:

返回目录:excel表格制作


求一个excel2007的VBA程序语言,主要完成以下任务:检索excel中的数据,然后把符合要求的数据自动写入word文档表格中,如下图,将日期、最大值、最小值按格式写入word表格中

既然没给出具体例子,那我们也大概的随便谈谈想法吧。
估计你说的表格1要用公式的数据量不会太大,那倒不如用VLOOKUP函数来得直接;该函数支持跨工作簿查找引用。至于这个函数怎么用,你再百度一下“VLOOKUP 详解”吧。
用VBA做的话不难,但VBA基本是定制型的,你不具体给出表格数据结构,写给你也是白写。
进入VBA窗口,双击工程源管理器上所在页,加入如下代码
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rownumber As Long
On Error Resume Next
Application.ScreenUpdating = False
For rownumber = 3 To Cells(70000, 3).End(xlUp).Row
If Cells(rownumber, 3) <> "" Then Cells(rownumber, 1) = rownumber - 2
Next
Application.ScreenUpdating = True
End Sub

右键工作表标签,贴入下面VBA代码。

这段代码是依据你图上的位置来写的,实际情况,可修改部分单元格区域。

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim TableRng As Range
    Dim DestRng As Range
    
    If Target.Address = "$N$10" Then ''判断是不是姓名单元格,可更e799bee5baa6e79fa5e98193e4b893e5b19e335
        ''传入查找区域,可更改
        Set TableRng = Range("N13:S22")
        
        Set DestRng = TableRng.Find(what:=Target.Value, lookat:=xlWhole)
        With Target
            ''返回各科成绩,数量可更改
            .Offset(0, 1) = DestRng.Offset(0, 1)
            .Offset(0, 2) = DestRng.Offset(0, 2)
            .Offset(0, 3) = DestRng.Offset(0, 3)
            .Offset(0, 4) = DestRng.Offset(0, 4)
        End With
    End If
End Sub

相关阅读

  • 请教,<em>Excel</em> <em>vba</em>关闭问题-e

  • 乔山办公网excel表格制作
  • 用2007试了下,原来没有宏代码的工作簿。百如果代码中写的内容没有包含sub 或者function的话,关闭工作簿再打开好像是度会清空。只要其中有任一段sub 或function就能正常保知存了,但如
关键词不能为空
极力推荐
  • 如何用Excel做财务报表-实现excel报表,用excel

  • 使用常规格式就可以了。1、先开启表格界面设置报表的几大模块,这里是分四块,如图2、然后知选中道标题栏,点击合并居中,标题栏名称就会居中显示了,如图3、同理完成其它模块

ppt怎么做_excel表格制作_office365_word文档_365办公网