VBA新手求助:InputBox内容无法正确插入Word,输出变量名而非实际值
问题分析与修复
你的代码存在两个关键错误:
错误1:变量名拼写不匹配
你声明的名字变量是strFirst、姓氏变量是strLast,但拼接完整姓名时错误使用了未声明的strFirstName和strLastName,这会导致strFull无法正确获取输入的姓名内容。
错误2:错误地将变量名作为字符串赋值
你给段落文本赋值时写了"strFull",这是把**字符串字面量"strFull"**赋值给文本,而非引用变量strFull的实际值。VBA中,引号包裹的内容会被当作纯文本处理,不会解析为变量。
修正后的完整代码
Public Sub Insert_Name_Into_Word() '将wd设置为Word的对象变量,指向Word.Application' Dim wd As Word.Application '将doc设置为对象变量,指向Word.Document' Dim doc As Word.Document '将para设置为对象变量,指向Word.Paragraph' Dim para As Word.Paragraph '声明strFirst、strLast、strFull为字符串类型变量' Dim strFirst As String, strLast As String, strFull As String '创建新的Word应用程序实例' Set wd = New Word.Application '在新Word窗口中创建新文档' Set doc = wd.Documents.Add '使新的Word应用程序可见' wd.Visible = True '通过InputBox获取名字并赋值给strFirst' strFirst = InputBox(prompt:="输入你的名字:", Title:="名字") '通过InputBox获取姓氏并赋值给strLast' strLast = InputBox(prompt:="输入你的姓氏:", Title:="姓氏") '修正变量名,将名字与姓氏拼接为完整姓名赋值给strFull' strFull = strFirst & " " & strLast '在文档中添加新段落' Set para = doc.Paragraphs.Add '去掉引号,引用变量strFull的值' para.Range.Text = strFull End Sub
内容的提问来源于stack exchange,提问作者Ron
相关产品推荐
相关产品推荐

