Excel VBA更改多个单元格的值

Excel VBA更改多个单元格的值,excel,vba,Excel,Vba,我有一行单元格,根据我选择的选项按钮,将显示一定范围的值。它不是基于任何方程式或任何逻辑。我需要在多个单元格中显示一组特定的值 Private Sub OptionButton1_Click() If OptionButton1.Value = True Then Range("B3","AF3").Value = End Sub 在这种情况下,如何跨单元格指示多个值?我会先将所有值放入某种数组中,然后将数组输入.Value?谢谢 可能有一种更优雅的方式,但这里有一种方式: Sub tes

我有一行单元格,根据我选择的选项按钮,将显示一定范围的值。它不是基于任何方程式或任何逻辑。我需要在多个单元格中显示一组特定的值

Private Sub OptionButton1_Click()
If OptionButton1.Value = True Then Range("B3","AF3").Value = 

End Sub

在这种情况下,如何跨单元格指示多个值?我会先将所有值放入某种数组中,然后将数组输入
.Value
?谢谢

可能有一种更优雅的方式,但这里有一种方式:

Sub test()

Dim strArray(0 To 2)    As String
Dim rng                 As Range
Dim cell                As Range
Dim counter             As Long

Set rng = Range("A3,B7,G5")
counter = 0

strArray(0) = "Value1"
strArray(1) = "Value2"
strArray(2) = "Value3"

For Each cell In rng
    cell.Value = strArray(counter)
    counter = counter + 1
Next cell

End Sub

也许有一种更优雅的方式,但这里有一种方式:

Sub test()

Dim strArray(0 To 2)    As String
Dim rng                 As Range
Dim cell                As Range
Dim counter             As Long

Set rng = Range("A3,B7,G5")
counter = 0

strArray(0) = "Value1"
strArray(1) = "Value2"
strArray(2) = "Value3"

For Each cell In rng
    cell.Value = strArray(counter)
    counter = counter + 1
Next cell

End Sub

我最终使用的方法如下

Worksheets("Sheet1").Range("B3","AF3").Value = Worksheets("Sheet2").Range("B3","AF3").Value

我最终使用的方法如下

Worksheets("Sheet1").Range("B3","AF3").Value = Worksheets("Sheet2").Range("B3","AF3").Value

是的,这是一种方法。@sous2817它知道如何将数组中的值解析到每个单元格中吗?我可以用逗号分隔这些值吗?不,你必须循环遍历数组,并将你想要的数组索引放入相应的单元格中。是的,这是一种方法。@sous2817,它会知道如何将数组中的值解析到每个单元格中?我可以用逗号分隔这些值吗?不,你必须循环数组,并将你想要的数组索引放入相应的单元格中。@DeeWBee确定,你想使用的范围是连续的还是不连续的?对不起,这是什么意思?@DeeWBee确定,您要使用的范围是连续的还是不连续的?对不起,这是什么意思?