No.3ベストアンサー
- 回答日時:
C列からE列まで
同時に移動する下方向サンプルです。
連続して動かすことを想定して最後に実行時の列で移動したセルをSelectしています。
Sub 下へ()
Dim rng As Range
Dim Col As Long, Rw As Long
If Intersect(Range("C3:E24"), Selection) Is Nothing Then Exit Sub
If Selection.CountLarge = 1 Then
Col = Selection.Column
Rw = Selection.Row
Set rng = Range(Cells(Rw, "C"), Cells(Rw, "E"))
rng.Cut
rng.Offset(2).Insert Shift:=xlDown
Cells(Selection.Row + 1, Col).Select
End If
Set rng = Nothing
End Sub
No.2
- 回答日時:
おはようございます。
曖昧なアドバイスにもかかわらず、流石です。
短いプロセスですが、順番と内容を理解しないと改造できないと思います。
上のプロシージャも下のものも、ちゃんと出来ていると思うのですが、
期待する動作は、どの様なものでしょうか、
変えた部分の、、ご存知と思いますが、
Intersect(Range("C3:E24"), Selection)は、二つの範囲(又は単セル)が重なっていれば
返されるので、C3:E24範囲のセルが選択されていれば、実行されると思います。
ローカルで検証してみましたが、両方とも条件範囲内で実行されました。
C列からE列を纏めて上下したいと言う事でしょうか?
期待する動きを自動記録を使っても記録できるかと思いますので
記録されたコードを参考にされるのが、良い方法かもしれません。
No.1
- 回答日時:
こんばんは、
こちらは、参考になりますでしょうか?
https://oshiete.goo.ne.jp/qa/11583115.html
#2の
Sub SITA() '下に1つ移動
Dim r As Long
On Error Resume Next
r = ActiveCell.Row '選択されているセルの行
Rows(r).Cut
Rows(r + 2).Insert
End Sub
を参考にしてください。
UEは、#1を上記コードを参考に変えてみてください。
Qchan1962さん
回答ありがとうございます。
SUB 上へ()
If Intersect(Range("C3:C24"), Selection) Is Nothing Then Exit Sub
If Selection.CountLarge = 1 Then
Selection.Cut
Selection.Offset(-1).Select
Selection.Insert Shift:=xlDown
End If
End Sub
は上手くいくのですが
1行目を
SUB 上へ()
If Intersect(Range("C3:E24"), Selection) Is Nothing Then Exit Sub
If Selection.CountLarge = 1 Then
Selection.Cut
Selection.Offset(-1).Select
Selection.Insert Shift:=xlDown
End If
End Sub
とすると上手く動きません
ご教授いただけませんか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Excel(エクセル) マクロを教えてください 3 2023/07/31 21:57
- Excel(エクセル) マクロを教えてください 2 2023/07/30 23:05
- Visual Basic(VBA) Excel vbaについて知恵もしくは、コード教えて下さいm(__)m ① 表にあるデータをコピー、 2 2022/09/01 23:57
- Excel(エクセル) 【マクロ】フォルダAからダBへファイルを、ファイルの更新日時の条件で、1つづつ移動するには? 3 2022/08/25 09:56
- Excel(エクセル) 【マクロ】ボタンを押すごとに、A1セル、A2セル、A3セルに日付を入力 3 2023/01/25 00:12
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
- Visual Basic(VBA) VBA 画面上のカーソルに文字数字を入力するコードを教えて下さい 1 2022/10/30 10:31
- Excel(エクセル) ファイル一覧表を使ったファイルの移動 5 2022/08/10 15:37
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelVBAを使って、値...
-
特定のセルが空白だったら、そ...
-
i=cells(Rows.Count, 1)とi=cel...
-
Excelのハイパーリンクにマクロ...
-
【Excel】指定したセルの名前で...
-
Excelで指定した日付から過去の...
-
DataGridViewのセル編集完了後...
-
【Excel VBA】指定行以降をクリ...
-
EXCELで変数をペーストしたい
-
Excel vbaで特定の文字以外が入...
-
【VBA】指定したセルと同じ値で...
-
特定行の色を変えたい(FlexGrid)
-
VBAでセルをクリックする回...
-
EXCELのVBA-フィルタ抽出後の...
-
スプレッドシートの数値列に対...
-
VBAの計算で@が出てしまう件
-
セル色なしの行一括削除
-
3桁または4桁の数値を時刻に...
-
”戻り値”が変化したときに、マ...
-
TODAY()で設定したセルの日付...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ExcelVBAを使って、値...
-
特定のセルが空白だったら、そ...
-
【Excel VBA】指定行以降をクリ...
-
i=cells(Rows.Count, 1)とi=cel...
-
【Excel】指定したセルの名前で...
-
Excelで指定した日付から過去の...
-
特定の文字を条件に行挿入とそ...
-
Excel VBA、 別ブックの最終行...
-
EXCELで変数をペーストしたい
-
Excelのプルダウンで2列分の情...
-
Excel vbaで特定の文字以外が入...
-
TODAY()で設定したセルの日付...
-
screenupdatingが機能しなくて...
-
DataGridViewの各セル幅を自由...
-
Sub 要具ライフ() ActiveSheet....
-
【EXCEL VBA】Range("A:A").Fi...
-
VBAを使用した時間管理
-
VBAでセルをクリックする回...
-
セル色なしの行一括削除
-
エクセルVBAでコピーして順...
おすすめ情報