[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『行削除について』(豆助ごんたくん)
行の選択した後指定したa列からh列を削除し、その後削除して空北なったa列からh列を詰めるを行いたいと思います。
VBAでどうすれば良いのかご教授をお願い致します。
< 使用 Excel:Microsoft365、使用 OS:Windows10 >
(通りすがり) 2023/01/24(火) 09:25:45
1 行の選択をした後 2 指定したa列からh列を削除し 3 その後削除して空北なったa列からh列を詰める
よく分からないんですが、単純にA列からH列を削除するんじゃなくて、
選択した行とA列からH列がクロスする部分だけ削除したいということでしょうか。
|[A]|[B]|[C]|[D]|[E]|[F]|[G]|[H]|[I]|[J] [1] | 1| 2| 3| 4| 5| 6| 7| 8| 9| 10 [2] | 11| 12| 13| 14| 15| 16| 17| 18| 19| 20 [3] | 21| 22| 23| 24| 25| 26| 27| 28| 29| 30 [4] | 31| 32| 33| 34| 35| 36| 37| 38| 39| 40 [5] | 41| 42| 43| 44| 45| 46| 47| 48| 49| 50 [6] | 51| 52| 53| 54| 55| 56| 57| 58| 59| 60 [7] | 61| 62| 63| 64| 65| 66| 67| 68| 69| 70 [8] | 71| 72| 73| 74| 75| 76| 77| 78| 79| 80 [9] | 81| 82| 83| 84| 85| 86| 87| 88| 89| 90 [10]| 91| 92| 93| 94| 95| 96| 97| 98| 99|100
結果図(5、6行目を選択した場合)
|[A]|[B]|[C]|[D]|[E]|[F]|[G]|[H]|[I]|[J] [1] | 1| 2| 3| 4| 5| 6| 7| 8| 9| 10 [2] | 11| 12| 13| 14| 15| 16| 17| 18| 19| 20 [3] | 21| 22| 23| 24| 25| 26| 27| 28| 29| 30 [4] | 31| 32| 33| 34| 35| 36| 37| 38| 39| 40 [5] | 49| 50| | | | | | | | [6] | 59| 60| | | | | | | | [7] | 61| 62| 63| 64| 65| 66| 67| 68| 69| 70 [8] | 71| 72| 73| 74| 75| 76| 77| 78| 79| 80 [9] | 81| 82| 83| 84| 85| 86| 87| 88| 89| 90 [10]| 91| 92| 93| 94| 95| 96| 97| 98| 99|100
Sub test() Dim LastC As Long, rng As Range LastC = Cells(1, Columns.Count).End(xlToLeft).Column On Error Resume Next Set rng = Application.InputBox(prompt:="行を選択してください。", Type:=8) If rng Is Nothing Then Exit Sub On Error GoTo 0 rng.EntireRow.Resize(, LastC - 8).Offset(0, 8).Copy Cells(rng.Row, 1) rng.EntireRow.Resize(, 8).Offset(0, LastC - 8) = "" End Sub (フォーキー) 2023/01/24(火) 10:32:24
|[A]|[B]|[C]|[D]|[E]|[F]|[G]|[H]|[I]|[J] [1] | 1| 2| 3| 4| 5| 6| 7| 8| 9| 10 [2] | 11| 12| 13| 14| 15| 16| 17| 18| 19| 20 [3] | 21| 22| 23| 24| 25| 26| 27| 28| 29| 30 [4] | 31| 32| 33| 34| 35| 36| 37| 38| 39| 40 [5] | 41| 42| 43| 44| 45| 46| 47| 48| 49| 50 [6] | 51| 52| 53| 54| 55| 56| 57| 58| 59| 60 [7] | 61| 62| 63| 64| 65| 66| 67| 68| 69| 70 [8] | 71| 72| 73| 74| 75| 76| 77| 78| 79| 80 [9] | 81| 82| 83| 84| 85| 86| 87| 88| 89| 90 [10]| 91| 92| 93| 94| 95| 96| 97| 98| 99|100
結果図(5、6行目を選択した場合)
|[A]|[B]|[C]|[D]|[E]|[F]|[G]|[H]|[I]|[J] [1] | 1| 2| 3| 4| 5| 6| 7| 8| 9| 10 [2] | 11| 12| 13| 14| 15| 16| 17| 18| 19| 20 [3] | 21| 22| 23| 24| 25| 26| 27| 28| 29| 30 [4] | 31| 32| 33| 34| 35| 36| 37| 38| 39| 40 [5] | 61| 62| 63| 64| 65| 66| 67| 68| 49| 50 [6] | 71| 72| 73| 74| 75| 76| 77| 78| 59| 60 [7] | 81| 82| 83| 84| 85| 86| 87| 88| 69| 70 [8] | 91| 92| 93| 94| 95| 96| 97| 98| 79| 80 [9] | | | | | | | | | 89| 90 [10]| | | | | | | | | 99|100
(豆助ごんたくん) 2023/01/24(火) 11:30:43
日本語の修正くらい自分でしようよ。
(abc) 2023/01/24(火) 11:53:36
>削除すべき範囲を選択しておいて >削除 ‐ 上方向にシフト
選択した箇所だけ左右、上下方向に詰めることができることを忘れてました。
豆助ごんたくんさん、コードは破棄してください。
abcさんありがとうございます。
(フォーキー) 2023/01/24(火) 11:56:55
(abc) 2023/01/24(火) 20:27:49
回答者の参考として。
http://www.vbalab.sakura.ne.jp/vbaqa/c-board.cgi?cmd=ntr;tree=82119;id=excel
(マルチネス) 2023/01/25(水) 09:37:24
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.