下記のマクロを実行すると
他のブックの指定範囲を作業ブックの指定範囲にコピペできます。
このマクロだとコピー元のセル値に設定している数式を文字としてコピーしてしまいます、
このコードを変更してコピペした場合に、コピー元のセル値に表示した文字及び数式をコピー先にコピペ出来る方法を教えてください。
現状のマクロ
Sub 提出シート貼り付け()
Dim Wb1, Wb2
Set Wb1 = Workbooks(1) 'このブック
Set Wb2 = Workbooks(2) '別ブック
'セルの値を取得する
Wb2.Worksheets("提出シート").Range("B1:H37").Copy Wb1.Worksheets("受付").Range("B1:H37")
End Sub
以上です。
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
Sub 提出シート貼り付け()
Dim Wb1 As Workbook, Wb2 As Workbook
Set Wb1 = Workbooks(1) 'このブック
Set Wb2 = Workbooks(2) '別ブック
'セルの値、数式、書式を含めて取得する
Wb2.Worksheets("提出シート").Range("B1:H37").Copy
Wb1.Worksheets("受付").Range("B1:H37").PasteSpecial Paste:=xlPasteAll
Application.CutCopyMode = False 'コピー範囲の点線を解除する
End Sub
ご提示いただいたマクロは、コピー元のセルの値だけをコピーしていますが、数式や書式も含めてコピーするには、少し変更が必要です。`Range.Copy`メソッドは、範囲全体をコピーするため、数式や書式も含まれます。
以下に、数式と書式を含めた範囲をコピーするマクロを示します:
```vba
Sub 提出シート貼り付け()
Dim Wb1 As Workbook, Wb2 As Workbook
Set Wb1 = Workbooks(1) 'このブック
Set Wb2 = Workbooks(2) '別ブック
'セルの値、数式、書式を含めて取得する
Wb2.Worksheets("提出シート").Range("B1:H37").Copy
Wb1.Worksheets("受付").Range("B1:H37").PasteSpecial Paste:=xlPasteAll
Application.CutCopyMode = False 'コピー範囲の点線を解除する
End Sub
```
このマクロは以下のように動作します:
1. `Range("B1:H37").Copy` でコピー元の範囲をコピーします。これにはセルの値、数式、書式が含まれます。
2. `Wb1.Worksheets("受付").Range("B1:H37").PasteSpecial Paste:=xlPasteAll` でコピー先の範囲にすべての内容(値、数式、書式)を貼り付けます。
3. `Application.CutCopyMode = False` でコピー範囲の点線を解除します。
このコードにより、コピー元のセルに表示されている文字(値)や数式がそのままコピー先に貼り付けられます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) クリップボードに貼付している文字列が、マクロで別ブックへ転記すると、消えてしまう 1 2023/10/15 13:36
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Visual Basic(VBA) Excelのマクロについて教えてください。 1 2023/03/12 12:16
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/04 17:58
- Excel(エクセル) 3つのマクロを連続実行の中で、1つ目のマクロ要件を満たさなかったら、マクロ2・3を実行しない為には 1 2023/10/15 13:42
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/01/26 09:50
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2024/04/02 16:12
- Visual Basic(VBA) Excelのマクロについて教えてください。 下記のマクロを実行すると 別ブックに指定セル値をコピーで 1 2024/04/05 21:25
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2024/04/06 10:16
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ワイルドカード「*」を使うとう...
-
別ブックをダイアログボックス...
-
VBA シートをコピーする際に Co...
-
VBAで別ブックのシートを指定し...
-
2つ目のコンボボックスが動作...
-
【ご教示ください】VBAの記述方...
-
[Excel]ADODBでNull変換されて...
-
エクセルVBAが途中で止まります
-
エクセルVBA 既存エクセルを開...
-
VBA 別ブックからコピペしたい...
-
現在開いているbook全てを対象...
-
エクセルVBAでテキストボックス...
-
サーバーに保存したエクセルフ...
-
VBA でテキストファイルに読み書き
-
VBA 実行時エラー 2147024893
-
VBA コードを実行すると画面が...
-
【マクロ】アクティブセルにブ...
-
VBAで別のブックにシートをコピ...
-
VBA 複数のブックに同じ列を表...
-
Excelマクロ 該当する値の行番...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
VBA 別ブックからコピペしたい...
-
別ブックをダイアログボックス...
-
エクセルVBAが途中で止まります
-
ワイルドカード「*」を使うとう...
-
【Excel VBA】書き込み先ブック...
-
VBAで別ブックのシートを指定し...
-
【ExcelVBA】zip圧縮されたCSV...
-
VBAで別のブックにシートをコピ...
-
VBA コードを実行すると画面が...
-
Excel2007VBAファイルの表示に...
-
VBAで複数のブックを開かずに処...
-
[Excel]ADODBでNull変換されて...
-
Excelファイルを開くとき、読み...
-
VBA 実行時エラー 2147024893
-
Excelマクロ 該当する値の行番...
-
Excel にて、 リストボックスの...
-
VBS Bookを閉じるコード
-
複数のエクセルファイルとシー...
-
【ExcelVBA】インデックスが有...
おすすめ情報

