Microsoft Office Personal 2010
エクセルVBAです。
例えばセルB3に『あああ』と入力されている時、
MsgBox Range("B3")
とすれば、
『あああ』
とメッセージが出ると思います。
これは良いのですが、指定したセルが結合セルだった場合、
一番左上のセルを指定しないと値が返ってきません。
例)
B3,B4,B5が結合セルで、値『あああ』が入っている場合
MsgBox Range("B3") 'あああ
MsgBox Range("B4") '△ブランク
MsgBox Range("B5") '△ブランク
これをB4,B5を指定しても『あああ』が返ってくるようにする方法はありますか?
尚、マクロを動かしたいエクセルは表になっており
間に空白のセルも含まれます。
VBA
1Sub ZZZ() 2 Dim i As Integer 3 Dim maxRow As Integer 4 i = 3 5 maxRow = Cells(Rows.Count, 3).End(xlUp).Row 6 7 While i <= maxRow 8 Select Case Range("B" & i) 9 Case "あああ" 10 Select Case Range("C" & i) 11 Case "項目1": Range("D" & i) = "簡単に" 12 Case "項目2": Range("D" & i) = "書くと" 13 Case "項目3": Range("D" & i) = "こんな" 14 End Select 15 Case "いいい" 16 Range("D" & i) = "感じの" 17 Case "ううう" 18 Select Case Range("C" & i) 19 Case "項目1": Range("D" & i) = "ことを" 20 Case "項目2": Range("D" & i) = "したい" 21 End Select 22 Case "えええ" 23 Select Case Range("C" & i) 24 Case "項目1": Range("D" & i) = "です。" 25 Case "項目2": Range("D" & i) = "朝食に" 26 Case "項目3": Range("D" & i) = "納豆は" 27 Case "項目4": Range("D" & i) = "欠かせ" 28 End Select 29 Case "おおお" 30 Range("D" & i) = "ない。" 31 End Select 32 i = i + 1 33 Wend 34End Sub 35

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/23 08:04