Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用VBA表单中的文本框输入替换Excel单元格值_Vba_Excel - Fatal编程技术网

用VBA表单中的文本框输入替换Excel单元格值

用VBA表单中的文本框输入替换Excel单元格值,vba,excel,Vba,Excel,我在Excel 201中创建了一个简单的表单,我希望在其中替换单元格范围B5:B1511个单元格中的单个文本字符串值 我已使用此代码测试B5处的第一个单元格,该单元格在A5中由标签Christian Name引用,我已在表单Christian\u输入上标记了文本框: Private Sub Christian_Input_Change() ThisWorkbook.Worksheets("Sheet1").Cells(5, 1) = Christian_Input.Text End Sub

我在Excel 201中创建了一个简单的表单,我希望在其中替换单元格范围
B5:B15
11个单元格中的单个文本字符串值

我已使用此代码测试
B5
处的第一个单元格,该单元格在
A5
中由标签Christian Name引用,我已在表单Christian\u输入上标记了文本框:

Private Sub Christian_Input_Change()

ThisWorkbook.Worksheets("Sheet1").Cells(5, 1) = Christian_Input.Text
End Sub
当我在表单中输入一个新的文本字符串并运行它时,表单只会显示在我的工作表1上,输入文本框中有替换文本,但单元格
B5
中的文本字符串既不会高亮显示也不会被替换

最后,当我打开文件时,表单不可见

有人能告诉我需要做什么改动吗

ThisWorkbook.Worksheets("Sheet1").range("B5:B15").value = Christian_Input.Text
ThisWorkbook.Worksheets("Sheet1").range("B5").select
将以下内容添加到“此工作簿”模块,以便在打开工作簿时自动启动表单(将UserFormName替换为表单名称):


亲爱的Sebastian,我很遗憾,在修改了我的用户表单中的代码(如下所附)后,它仍然没有覆盖Sheet1中B5单元格中的文本。他们是否应该使用某种形式的cmdButton来覆盖单元格?我非常感谢你的帮助。Private Sub-Christian_Input_Change()此工作簿。工作表(“Sheet1”).Range(“B5:B15”)。值=Christian_Input.Text此工作簿。工作表(“Sheet1”).Range(“B5”)。选择End Subar是否确实要写入“Sheet1”?您是指不同的工作表吗?您可以尝试添加代码:
MsgBox Christian\u Input.Text
,以查看您想要在单元格中显示的文本是否在输入框中正确捕获。如果没有在单元格中显示包含所需文本的消息框,则说明输入框的代码有问题。如何运行表单?
Private Sub Workbook_Open()
    UserFormNameHere.show   
End Sub