VBを勉強中の初心者です。
マクロの自動記録でシート1の5~6行目をシート2のセルA3へコピーすることはできました。マクロの内容は
Sheets("Sheet1").Select
Rows("5:6").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A3").Select
ActiveSheet.Paste
となっていました。
上記のシート1の5~6行目を任意の複数行(例えば
A1 に 200306 A2 に 200307 A3 に 200307
A4 に 200307 A5 に 200308 A6 に 200309
A7 に 200309 のデータがあった場合、コピーしたい年月が 200307 の場合は A2 ~ A4 をシート2のA3へ)でコピーしたいのですが、どうすればよいのかどなたか教えて下さい。よろしくお願いします。
No.2
- 回答日時:
補足です。
。。※は行った動作です。
Cells.Select
※シート全体を選択
Selection.AutoFilter
※メニューから[データ]-[フィルタ]-[オートフィルタ]
Selection.AutoFilter Field:=1, Criteria1:="200"
※A列を[200]でフィルタリング
Range("A1").Select
※A1セルを選択
Range(Selection, Selection.End(xlDown)).Select
※A1セルで[Shift]+[Ctrl]+[↓]を押下
Range(Selection, Selection.End(xlToRight)).Select
※A1セルで[Shift]+[Ctrl]+[→]を押下
Selection.SpecialCells(xlCellTypeVisible).Select
※[Alt]+[;]を押下 (可視セルのみ選択)
Selection.Copy
※コピー
Sheets("Sheet2").Select
※Sheet2を選択
Range("A1").Select
※Sheet2のA1セルを選択
ActiveSheet.Paste
※ペースト
Sheets("Sheet1").Select
※Sheet1を選択
Application.CutCopyMode = False
※コピー解除
Selection.AutoFilter
※メニューから[データ]-[フィルタ]-[オートフィルタ]
Range("A1").Select
※A1を選択
No.1
- 回答日時:
Sheet1にこんなデータがあったとします。
A列が200のものだけをSheet2にコピーしたいとします。
※1行目にはタイトルが入っていること
※データ(B列)はすべて埋まっていること
| A | B | C |
--+-----+-----+-----+-
1| Key | Data| |
2| 100 | 10 | |
3| 200 | 20 | |
4| 200 | 5 | |
5| 300 | 25 | |
6| 300 | 10 | |
7| | | |
*****
Cells.Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:="200"
Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.SpecialCells(xlCellTypeVisible).Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
ActiveSheet.Paste
Sheets("Sheet1").Select
Application.CutCopyMode = False
Selection.AutoFilter
Range("A1").Select
3行目の200の値を変えてあげれば
任意のものがコピーできます。
何をやっているかといいますと
オートフィルタをかけて対象のものだけをコピーする
という動作を記録しただけです。
※普通はループでまわして検索文字と一致するものを
コピーすることでしょう。
※今回はあえてわかりやすい即席なやり方でした。
ループや変数を使用できるのであれば
そちらのやり方を回答しますがいかがでしょうか。
参考になったでしょうか。。。ふあん。
この回答への補足
Neninp:
Nendo = InputBox( _
Title:="年月入力", _
Prompt:="年月(例:200306)を入力して下さい。")
Nentuki = Nendo * 1
Sheets("ドキュメント1").Select
Gyou = 1
Check:
If Gyou = 65500 Then
GoTo Endlabel
End If
If Range("A" & Gyou) <> Nentuki Then
Gyou = Gyou + 1
GoTo Check
End If
Sheets("1").Select
Cells.Select
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Key2:=Range("D1") _
, Order2:=xlAscending, Key3:=Range("C1"), Order3:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
SortMethod:=xlPinYin, DataOption1:=xlSortNormal, DataOption2:= _
xlSortNormal, DataOption3:=xlSortNormal
Gyou = 1
Search:
If Range("A" & Gyou) <> Nentuki Then
Gyou = Gyou + 1
GoTo Search
End If
Dim Myrule, Abc, Bcd
Abc = Gyou
Bcd = Abc + 1
Myrule:
If Range("A" & Abc) = Range("A" & Bcd) Then
Abc = Abc + 1
Bcd = Bcd + 1
GoTo Myrule
Else
Rows("1:" & Abc).Select ←←←←
End If
Selection.Copy
Sheets.Add.Name = 123
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("123").Move after:=Sheets("1")
Tuki = Nentuki Mod 100 & "月"
Sheets("123").Name = Tuki
Endlabel:
Range("A1").Select
End Sub
上記のマクロのなかの Rows("1:" & Abc).Select
"1:" を Gyou にしたいのですが実行するとエラーになります。よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
あなたの「必」の書き順を教えてください
ふだん、どういう書き順で「必」を書いていますか? みなさんの色んな書き順を知りたいです。 画像のA~Eを使って教えてください。
-
大人になっても苦手な食べ物、ありますか?
大人になっても、我慢してもどうしても食べれないほど苦手なものってありますよね。 あなたにとっての今でもどうしても苦手なものはなんですか?
-
メモのコツを教えてください!
メモを取るのが苦手です。 急いでメモすると内容がごちゃごちゃになってしまったり、ひどいときには全く読めない時もあります。
-
昨日見た夢を教えて下さい
たまにすごいドラマチックな夢見ること、ありませんか? 起きてからも妙に記憶に残っているような、そんな夢。
-
ギリギリ行けるお一人様のライン
おひとり様需要が増えているというニュースも耳にしますが、 あなたが「ギリギリ一人でも行ける!」という場所や行為を教えてください
-
A1セルに入力したら、入力時間をA2セルに自動挿入
Excel(エクセル)
-
Excel VBA あるセルでENTERを押すと特定のセルへ移動したい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル:マクロ「Application...
-
エクセルのアポストロフィを一...
-
メールソフト「サンダーバード...
-
エクセルで隣接していない複数...
-
Excelでコピーした行の挿入を繰...
-
エクセル 別シートへのコピー...
-
【UWSC】エクセルのセルの値を...
-
エクセル 飛び飛びのセルの値...
-
エクセルオートフィルで書式を...
-
VBAでセルがコピーされているか...
-
ホームページにある表の1列を...
-
EXELで複数のとびとびのセルを...
-
エクセルで値だけコピーして背...
-
エクセルで、選択範囲の数値全...
-
エクセル コピーしたデータを1...
-
サイズの異なる結合セル間での...
-
Excelでコピーをとったセルの色...
-
「選択範囲を解除してアクティ...
-
Excel 行の連続データを列に参...
-
エクセルで勝手に「折り返して...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルのアポストロフィを一...
-
エクセル:マクロ「Application...
-
エクセルで隣接していない複数...
-
エクセルで勝手に「折り返して...
-
メールソフト「サンダーバード...
-
Excelでコピーした行の挿入を繰...
-
Excel 行の連続データを列に参...
-
Excelに、ダブルクォーテーショ...
-
エクセル 別シートへのコピー...
-
EXCELのオートフィルの設定を変...
-
エクセルの2ページ目の作り方
-
エクセルで値だけコピーして背...
-
エクセルで、選択範囲の数値全...
-
エクセル コピーしたデータを1...
-
「選択範囲を解除してアクティ...
-
EXELで複数のとびとびのセルを...
-
エクセルオートフィルで書式を...
-
エクセルのコピペでクリップボ...
-
エクセルで「コピーしたセルの...
-
エクセルでの行数・列数を指定...
おすすめ情報