90023


使用しているセル範囲を配列に格納し、  
処理を行おうとしていますが、if文で文字列の比較ができていない状態です。  
If r(i, 2) Like "MB*" Then を If r(i, 2).value Like "MB*" Then  
としてみても、「オブジェクトが必要です」というエラーになってしまいます。  
どういうことでしょうか？

[code]

     r = Range("A1").CurrentRegion
        For i = 1 To lastRow
            If r(i, 2) Like "MB*" Then
                r(i, 2) = r(i, 2) & "/" & r(i, 3)
                r(i, 5) = r(i, 5) * 8
            Else
                r(i, 2) = r(i, 2) & "/" & r(i, 3)
                r(i, 5) = r(i, 5) * 8 / 1000
            End If
        Next
        
        Range("A1:F" & lastRow) = r
    
[/code]


CC BY-SA 4.0
2022-07-16T07:08:40.940
90017
2022-07-17T04:35:02.493
question
vba
VBA　配列の処理について


比較するセルが間違っていたのが原因で、以下の通り修正しました。

**修正前:**

[code]

    If r(i, 2) Like "MB*" Then
    
[/code]

**修正後:**

[code]

    If r(i, 6) Like "MB*" Then
    
[/code]


CC BY-SA 4.0
2022-07-16T12:03:22.040
90023
2022-07-17T04:35:02.493
2022-07-17T04:35:02.493
3060
90017
answer