- ベストアンサー
Excell : 現在のカーソルがある行の特定の列に値を書き込むマクロ
現在のカーソルがある行の特定の列に値を書き込むマクロの書き方を教えてください。以下は20行めのA列、B列にa, b を書き込むものですが、最初のRange("A20").Selectをカレント行に設定するコードを書けばいいのでしょうか?具体的な記述を教えてください。よろしくお願いします。 Sub Macro4() Range("A20").Select ActiveCell.FormulaR1C1 = "a" Range("B20").Select ActiveCell.FormulaR1C1 = "b" Range("C20").Select End Sub
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
以下のように色んな方法があります。 Sub Macro4() Cells(ActiveCell.Row, 1).Value = "a" Cells(ActiveCell.Row, 2).Value = "b" End Sub Sub Macro5() Cells(ActiveCell.Row, "A").Value = "a" Cells(ActiveCell.Row, "B").Value = "b" End Sub Sub Macro6() Cells(ActiveCell.Row, "A").Value = "a" Cells(ActiveCell.Row, "A").Offset(, 1).Value = "b" End Sub Sub Macro7() Range("A" & ActiveCell.Row).Value = "a" Range("B" & ActiveCell.Row).Value = "b" End Sub Sub Macro8() Range("A" & ActiveCell.Row).Value = "a" Range("A" & ActiveCell.Row).Offset(, 1).Value = "b" End Sub 尚、それぞれのValueは削除可能ですが付けておいた方がベターです。
その他の回答 (5)
- hana-hana3
- ベストアンサー率31% (4940/15541)
Range や Cells で、最初から記入位置をしてしても構いません。 Sub Macro4() Range("A20").FormulaR1C1 = "a" Range("B20").FormulaR1C1 = "b" Cells(20, 3).FormulaR1C1 = "c" End Sub
お礼
回答ありがとうございます。 固定の内容をカーソルを置いた位置に書き込みたい のでActiveなrowを知る必要があります。
- WWolf
- ベストアンサー率26% (51/192)
シートのコードに Private Sub CommandButton1_Click() a = ActiveCell.Row Cells(a, 3).Value = "a" Cells(a, 4).Value = "b" End Sub でコマンドボタンを押せばアクティブなセルのC列にa,B列にbがはいります。
お礼
回答ありがとうございます。
- WWolf
- ベストアンサー率26% (51/192)
シートのコードに Private Sub Worksheet_SelectionChange(ByVal Target As Range) a = ActiveCell.Row Cells(a, 3).Value = "a" Cells(a, 4).Value = "b" End Sub でアクティブになったセルのC列にa,B列にbがはいります。
お礼
ていねいな回答をありがとうございます。
- jindon
- ベストアンサー率43% (50/116)
Sub Macro4() Range("A" & ActiveCell.Row).Value="a" Range("B" & ActiveCell.Row).Value="b" End Sub
お礼
回答ありがとうございます。 さっそく試してみて、うまくいきました。 シンプルな書き方で分かりやすいですね。
- deecyan
- ベストアンサー率38% (89/233)
現在の行は(カーソルのある行) ActiveCell.Row で求まります Sub aaa() row1 = ActiveCell.Row '現在の行を求める Cells(row1, 1) = "aaa" 'A 列にいれる Cells(row1, 2) = "bbb" 'B 列にいれる Cells(row1, 3) = "ccc" 'C 列にいれる End Sub
お礼
回答ありがとうございます。 さっそく試してみて、うまくいきました。
お礼
回答ありがとうございます。 勉強になりました。感謝です。