
お世話になります。
ユーザーフォームに期間を入力し、オートフィルタから可視セル
をコピペしようと試みたのですが、貼り付け先が結合セルのため
うまく出来ません。可視セルをひとつずつ貼り付けるしかないのでしょうか?
仮にセルを一つずつ貼り付ける場合はどのようにコードを
書いたらよいでしょうか?
以下コード
Private Sub CommandButton1_Click()
Dim 開始日 As Date
Dim 終了日 As Date
条件 = Worksheets("sheet2").Range("C6")
場所 = Worksheets("sheet2").Range("A21")
開始日 = TextBox1
終了日 = TextBox2
If Worksheets("sheet1").AutoFilterMode Then
Worksheets("sheet1").AutoFilterMode = False
End If
ScreenUpdating = False
With Sheets("sheet1")
.Range("A5").AutoFilter Field:=2, Criteria1:=">=" & TextBox1, Operator:=xlAnd, _
Criteria2:="<=" & TextBox2 '条件日付
.Range("A5").AutoFilter Field:=13, Criteria1:="=" & 条件, Operator:=xlAnd '条件
End With
Range("A5").Select
Range("A5:X1000").Sort Key1:=Range("A5"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
SortMethod:=xlPinYin, DataOption1:=xlSortNormal
Worksheets("sheet1").Range("A5").CurrentRegion.SpecialCells (xlCellTypeVisible)
.Copy
Worksheets("sheet2").Range("A21").Offset(-1.1).PasteSpecial , Paste:=xlPasteValues
Range("C6").Select
Application.CutCopyMode = False
Worksheets("sheet1").AutoFilterMode = False
ScreenUpdating = True
End Sub
No.1ベストアンサー
- 回答日時:
単純にセル結合を解除してコピー、もう一度結合しなおし、
じゃダメなんですか?
多分そのほうが速度も速いんじゃないかと。
SpecialCells で引っ張ってきたセルを一つ一ついじるのは
結構面倒な処理なんで。
この回答への補足
早速の回答ありがとうございます。
いろいろ探してみたのですが、SpecialCellsでコピペの際に
個別のセルを扱うなんてことは見つかりませんでした。
貼り付けるセルの個数は200~1500になります。
貼り付け先を変えるのが早いですね。
ちなみに、for~nextやdo~loopを使うのが面倒になるということで
しょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセル VBA 処理スピードを上げたいのですが。 6 2023/03/31 20:52
- Visual Basic(VBA) EXCELのVBAについて 2 2023/07/05 17:17
- Visual Basic(VBA) worksheets & rows メソッドは失敗しました。のエラー回避のやり方 1 2022/06/07 13:58
- Visual Basic(VBA) Sheet「状況」から、分類の年齢別カウント数をSheet「D表」へ転記する下記マクロを作っています 7 2022/12/14 17:57
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) マクロで最終行を取得してコピーしたい 3 2022/04/06 19:07
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) 前回ご教授いただいたコードに覚えたてのループ処理で品名りんごAから順に20回for nextでループ 7 2023/01/13 22:01
- Visual Basic(VBA) excel2021で実行できないマクロ。どこを直したらいいのか 2 2022/03/28 03:40
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで条件に合ったセルの...
-
可視セルから結合セルへの貼り...
-
Excelで離れたセルに連続したデ...
-
【Excel 関数】 INDIRECT関数の...
-
Excelで同じセルに箇条書きをし...
-
A1セルに入力したら、入力時間...
-
お肉の下のシートを煮込んでし...
-
入力したところまでを自動的に...
-
Excelで来月以降の日付のセルを...
-
Excelの入力規則で2列表示したい
-
EXCELで○ヶ月を○年○ヶ月に変換...
-
エクセルで既に入力してある文...
-
セルを結合したA4とA5の条件付...
-
エクセル ボタンを押すとセルの...
-
Excelでセルに入力されたカラー...
-
エクセルの複数のセルを一括で...
-
空白でないセルの値を返す方法...
-
エクセル セルに文字を入力した...
-
Excelでの検索結果を含む行だけ...
-
複数の文字列のいずれかが含ま...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル関数CONCATENATEで0が...
-
同じ数値だったら、横の数値を...
-
EXCEL 二つずつ連続して表示し...
-
Excelで離れたセルに連続したデ...
-
111,222,333・・・とオートフィ...
-
エクセル SUMPRODUCT と OFFSET
-
エクセルで画像のハイパーリン...
-
Excelで2つの表を1つにまとめ...
-
エクセルで1行ごとに異なる計算...
-
【Excel 関数】 INDIRECT関数の...
-
シート順のオートフィルの設定...
-
スプレッドシートのIMPORTRANGE...
-
Excelで別シートの表から指定セ...
-
EXCEL2007のオートフィル機能で...
-
エクセルで条件に合ったセルの...
-
可視セルから結合セルへの貼り...
-
Excelで同じセルに箇条書きをし...
-
A1セルに入力したら、入力時間...
-
Excelの入力規則で2列表示したい
-
EXCELで○ヶ月を○年○ヶ月に変換...
おすすめ情報