Sub Button1Click()
Dim temp As Worksheet
Set temp = ThisWorkbook.Worksheets("Input")
Dim tempAct As String
Dim tempCC As String
Dim tempRan As String
tempAct = Range("B1").Value
tempCC = Range("B2").Value
tempRan = Range("B3").Value
If temp.Range("B1:B3").Value = "" Then
MsgBox ("Blank Input!")
ElseIf temp.Range("B1:B3").Value <> "" Then
temp.Range("C1").Value = tempAct
temp.Range("C2").Value = tempCC
tmep.Range("C3").Value = tempRan
End If
End Sub
我正在尝试按下此按钮时创建一个简单的代码,它只是将单元格值复制到另一个单元格上,还有任何想法如何将输入结果放入列表框中?
生成此宏时,我收到Type Missmatch错误。
答案 0 :(得分:0)
我认为由于这一行而出现类型不匹配
If temp.Range("B1:B3").Value = "" Then
我不相信你可以将条件应用于范围内的所有细胞。如果你的范围是单个单元格,即Range("B1").Value
,则条件语句在语法上是正确的,但当然不会给你想要的结果。
您可以使用For
循环来测试每个单元格,如下所示。
Sub Button1Click()
Dim temp As Worksheet
Dim rng As Range
Dim Cancel As Boolean
Cancel = False
Set temp = ThisWorkbook.Worksheets("Input")
Dim tempAct As String
Dim tempCC As String
Dim tempRan As String
tempAct = Range("B1").Value
tempCC = Range("B2").Value
tempRan = Range("B3").Value
Set rng = temp.Range("B1:B3")
For Each cell In rng
If IsEmpty(cell) Then
MsgBox ("Blank Input!")
Cancel = True
Exit For
End If
Next
If Cancel = False Then
temp.Range("C1").Value = tempAct
temp.Range("C2").Value = tempCC
temp.Range("C3").Value = tempRan
End If
End Sub