ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 8766|回复: 6

[求助] word中指定位置如何插入excel数据与表格(现已将问题重新描述)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2010-3-15 09:59 | 显示全部楼层 |阅读模式
问题是这样的。附件中有一个word与一个excel文件,word文件中只有三行文字和一个表格,在文字中“数据”这个字符出现了三次(字体兰色),”表一“这个字符只出现了一次(字体天蓝色)。现在有两个要求:
一:将第三次出现“数据”字符之后的"66666"替换为excel文件中sheet1的A1单元格的内容。
二:将出现“表一”字符所在行下面的表格删除,再将excel文件中sheet1的a5:B8单元格的数据粘贴到“表一”字符所在行下面的位置。
注:excel文件中sheet1的a5:B8单元格与A1单元格内容并无关系。

[ 本帖最后由 Saint_Zuo 于 2010-3-15 14:32 编辑 ]

问题.rar

9.54 KB, 下载次数: 55

TA的精华主题

TA的得分主题

发表于 2010-3-15 10:59 | 显示全部楼层
原帖由 Saint_Zuo 于 2010-3-15 09:59 发表
请教如何使用vba在“如何取得excel单元格中数据”中先搜索到第三个“数据”的位置,并将其后面的数据66666替换为
”数据源.xls“中sheet1中a1的数据88888。再搜索到"表一"的位置,并将其下面一行中的原有表格替换为 ...

请再次读一下你写的“问题”,让人不知所云,包含Word文档中的“我要的数据是数据源.xls中sheet1中的a1中的数据( 原来是66666)88888。”
关系,把关系描述清楚。
比如,什么叫第三个数据?它是什么,有什么特征?
EXCEL工作表中,A1单元格和下面的A5:B8是什么关系,它们之间是如何定位的?有没有其它的内容,单元格地址是不是固定等等,我想,你可以花不到半个小时全部交待清楚,而不是让想帮助你的网友给你提问题。

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-3-15 14:14 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-3-15 16:52 | 显示全部楼层
原帖由 Saint_Zuo 于 2010-3-15 14:14 发表
麻烦各位老师了。


至今没有明白楼主的真实动机。
莫名其妙的“数据”“6666”,你至少给给它安排一个一室一厅,比如按个书签或者是动态的位置,是第几段的结束前字符串,或者是全文关键字的第几个位置。
建议楼主看一下这个链接中的链接,也许,粘贴一个链接就OK了。

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-3-16 08:48 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
原帖由 守柔 于 2010-3-15 16:52 发表


至今没有明白楼主的真实动机。
莫名其妙的“数据”“6666”,你至少给给它安排一个一室一厅,比如按个书签或者是动态的位置,是第几段的结束前字符串,或者是全文关键字的第几个位置。
建议楼主看一下这个链接 ...

不好意思,我对word里的对象元素不太了解。这个66666的位置就是第三次出现“数据”字符串之后与第一次出现句号之间的位置。请教版主您指的那个”链接中的链接“是什么?该如何使用?

[ 本帖最后由 Saint_Zuo 于 2010-3-16 08:50 编辑 ]

TA的精华主题

TA的得分主题

发表于 2010-3-16 10:55 | 显示全部楼层
原帖由 Saint_Zuo 于 2010-3-16 08:48 发表

不好意思,我对word里的对象元素不太了解。这个66666的位置就是第三次出现“数据”字符串之后与第一次出现句号之间的位置。请教版主您指的那个”链接中的链接“是什么?该如何使用?


只能费劲的揣磨楼主的心思了,累。
以下代码仅供参考。
Option Explicit

Sub Example()
    Dim objExcel As Object
    Dim objSheet As Object
    Dim myRange As Range
    Dim myTable As Table
    Dim oCell As Cell
    Dim vntRange As Variant
    Dim strFind As String
    Dim xlFileName As String
    Dim strXLA1 As String
    Dim intCount As Integer
    Dim intTarget As Integer
    Dim intRow As Integer
    Dim intCol As Integer
    Dim blnExists As Boolean
    strFind = "数据"
    intTarget = 3
    Selection.HomeKey wdStory
    With Selection.Find
        .ClearFormatting
        .Text = strFind
        .Wrap = wdFindStop
        .MatchWildcards = False
        Do
            If .Execute = False Then Exit Sub
            intCount = intCount + 1
            If intCount = intTarget Then
                With ActiveDocument
                    xlFileName = .Path & "\数据源.xls"
                    Set myRange = .Range(Selection.End, Selection.Paragraphs(1).Range.End - 1)
                    Set myTable = .Tables(1)
                End With
                '''myRange.Select
                blnExists = (InStr(myRange.Text, "。") > 0)
                If Len(Dir(xlFileName, vbDirectory)) = 0 Then Exit Sub
                Set objExcel = GetObject(xlFileName)
                Set objSheet = objExcel.sheets(1)
                strXLA1 = CStr(objSheet.[A1].Value)
                If blnExists = True Then strXLA1 = strXLA1 & "。"
                myRange.Text = strXLA1
                vntRange = objSheet.[A5:B8].Value
                For Each oCell In myTable.Range.Cells
                    With oCell
                        intRow = .RowIndex
                        intCol = .ColumnIndex
                        .Range.Text = vntRange(intRow, intCol)
                    End With
                Next
                Set objExcel = Nothing
                Exit Sub
            End If
        Loop
    End With
End Sub

TA的精华主题

TA的得分主题

发表于 2018-1-16 21:51 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2025-1-12 10:11 , Processed in 0.025486 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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