用excel中的VBA,然后根据excel中单元格中内容,批量替换一个word的模板doc中的字符。字符有很多处。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用excel中的VBA,然后根据excel中单元格中内容,批量替换一个word的模板doc中的字符。字符有很多处。相关的知识,希望对你有一定的参考价值。

用excel中的VBA,然后根据excel中单元格中内容,批量替换一个word的模板doc中的字符。字符有很多处。
比如A1=美女,A2=美少女
word某处有ab,就替换成‘美女’
如果有aa地方,就替换成‘美少女’

参考技术A 你的这个问题,需要横跨EXCEL与WORD,一般来说这时候用VBA不好办了。
建议用C语言或者VB(不是VBA哦),先调用EXCEL文件,查询对应关系,然后调用WORD文档,根据对应关系作出相应替换
这样应该能达到你的目的了追问

我用VBA已经做出来了,用C做,累死你。查API都比较麻烦

追答

不必要用API的,有现成的函数,OLE功能,还是挺方便的,操作与控制能力比较强,而且可以独立与文档保存,别人用着也方便

参考技术B 可以先录一段单次替换的宏,然后嵌到循环语句中,稍作修改追问

这么也简单了吧,问题是25个不同单词需要替换。替换内容又不一样

参考技术C 我不会。

excel VBA 组合框 取值

请教在excel中想将组合框中的值取出赋予变量如何编写代码?
如组合框名:下拉框1,变量名:序号

参考技术A 序号=下拉框1 参考技术B excel中的下拉框有三种,一个是excel窗体工具栏中的,一个是excel控件工具栏中的,还有一个是VBA界面中的。
这几个使用都不方便,所以我不使用它们,不如直接引用单元格方便,或者使用“数据-有效性”中的序列。

下面这个是excel VBA中的帮助文件,也许对你有用。
ListBox 控件、AddItem 和 RemoveItem 方法以及 ListIndex、ListCount 属性示例

下例用 AddItem、RemoveItem 以及 ListIndex 和 ListCount 属性来添加和删除列表框的内容。

若要使用该示例,请将示例代码复制到某窗体的声明变量部分。请确保该窗体包含:

名为 ListBox1 的列表框。

名为 CommandButton1 和 CommandButton2 的两个命令按钮控件。

Dim EntryCount As Single

Private Sub CommandButton1_Click()
    EntryCount = EntryCount + 1
    ListBox1.AddItem (EntryCount & " - Selection")
End Sub

Private Sub CommandButton2_Click()
    '确认列表框包含列表项
    If ListBox1.ListCount >= 1 Then
        '如果没有选中的内容,用上一次的列表项。
        If ListBox1.ListIndex = -1 Then
            ListBox1.ListIndex = _
                    ListBox1.ListCount - 1
        End If
        ListBox1.RemoveItem (ListBox1.ListIndex)
    End If
End Sub

Private Sub UserForm_Initialize()
    EntryCount = 0
    CommandButton1.Caption = "Add Item"
    CommandButton2.Caption = "Remove Item"
End Sub本回答被提问者采纳

以上是关于用excel中的VBA,然后根据excel中单元格中内容,批量替换一个word的模板doc中的字符。字符有很多处。的主要内容,如果未能解决你的问题,请参考以下文章

用vba给Excel单元格赋值

如何使用 VBA 根据活动工作表中的单元格自动填充 Excel 表单?

Excel中怎样通过vba快速标注哪些单元格的数据发生变化?

excel中怎样用vba使单元格在特定条件下才可以编辑?

在excel中怎么快速批量删除单元格背景颜色为红色的数据?

EXCEL根据单元格名称改变后自杀,求VBA代码!