我第一次在這里發帖。我正在嘗試將具有 10 個元素的陣列復制到 10 個單獨的范圍。問題是所有單元格都只有陣列中的第一個元素。在下面的例子中,我只得到 ON。我不會在第 3 到第 5 個范圍內關閉。 編輯我試圖在不使用回圈的情況下執行此操作,因為我可能有很多元素并且在復制程序中速度變慢。
Dim Rng As String
Dim OnOff() As Variant
Rng = "F7,G4,H3,I9,J8,K2,L10,M1,N6,O5"
OnOff = Array("ON", "ON", "OFF", "OFF", "OFF", "ON", "ON", "ON", "ON", "ON")
Range(Rng).Value = OnOff
這就是我得到的:

這是我希望得到的:

uj5u.com熱心網友回復:
寫入非連續范圍
- 嘗試創建兩個單獨的單元格地址字串。
Const rgOnAddress As String = "F7,G4,L10,M1,N6,O5"
Const rgOffAddress As String = "H3,I9,J8"
Range(rgOnAddress).Value = "ON"
Range(rgOffAddress).Value = "OFF"
uj5u.com熱心網友回復:
根據您發布的圖片你只是想通過回圈Rng和OnOffsimultanoeusly
Dim Rng As String
Dim OnOff() As Variant
Rng = "F7,G4,H3,I9,J8,K2,L10,M1,N6,O5"
OnOff = Array("ON", "ON", "OFF", "OFF", "OFF", "ON", "ON", "ON", "ON", "ON")
Dim i As Long
Dim v As Variant
v = Split(Rng, ",")
For i = LBound(OnOff) To UBound(OnOff)
Range(v(i)) = OnOff(i)
Next i
由于似乎需要寫入非連續范圍,因此可以使用此鏈接中的代碼來加快速度。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/398067.html
下一篇:在Excel中用條件除法
