繁体   English   中英

VBA从Excel复制并替换为Word中的所有内容

[英]VBA Copy from Excel and replace all in Word

除了在Google上寻找解决方案外,我已经为这个问题排查了几周。

方案:我正在从特定的Excel单元格(范围“ B2”)中复制文本字符串(ABC公司),并在Word中多次替换文本(Company_name)。 考虑将此字符串存储在变量(Coy_name)中并运行“全部替换”指令。 代码如下:

Sub CopyDataToWord()

Dim appWd As Word.Application
Dim wdFind As Object
Dim docWD As Word.Document
Dim CoyName As String

Set appWd = CreateObject("Word.Application")
appWd.Visible = True
Set docWD = appWd.Documents.Open("D:\Dropbox\ClassSheet.docx")

sheet1.Range("B2").Copy

'Some code which will input the string from "B2" into variable Coy_name

appWd.Selection.Find.ClearFormatting
appWd.Selection.Find.Replacement.ClearFormatting
With wdFind
    .Text = "Company_name"
    .Replacement.Text = Coy_name
    .Forward = True
    .Wrap = wdFindContinue
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchByte = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
End With
appWd.Selection.Find.Execute Replace:=wdReplaceAll

Set appWd = Nothing
Set docWD = Nothing
Set appXL = Nothing
Set wbXL = Nothing

End Sub

这些代码的某些起源来自我拼凑而成的其他材料,因此它们看起来可能不合适。 如果我可能在解释自己要达到的目标时不小心,请向我提问。

代替这个:

sheet1.Range("B2").Copy

做这个:

Coy_name = sheet1.Range("B2").Value

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM