いつもお世話になります
Excelで単独セルからマージされたセルにコピーすると警告が出るので
VBA下記のようにプログラムで実行してみました
mRow1 = 4
mCol1 = 3
Cells(mRow1, mCol1).Copy
mRow3 = 4
mCol3 = 6
Cells(mRow3, mCol3).Select
Application.DisplayAlerts = False
Selection.PasteSpecial Paste:=xlPasteFormulasAndNumberFormats
始めは隠れていて気が付かなかったのですが、これだとマージされた二つのセルに
コピーされているのですね、マージを解いて分かりました。
そこで下記のようにプログラムを付け加えました
'...>すべてのセルにコピーされてしまうので先頭アドレス以外はクリアする
mRow4 = mRow3 + Cells(mRow3, mCol3).MergeArea.Rows.Count - 1
mCol4 = mCol3 + Cells(mRow3, mCol3).MergeArea.Columns.Count - 1
For k = mRow3 To mRow4
For m = mCol3 To mCol4
If k <> mRow3 Or m <> mCol3 Then
Cells(k, m) = ""
End If
Next m
Next k
'...<
これで今はプログラムを稼働していますが
古いプログラムを使ったExcelはいまだに値が隠れたままで、計算するとその値まで拾ってきて
違った結果となってしまいます
そこで、その隠れた値をExcel上で消したいのですが方法がありましたら教えてください
分かりずらい文章かも知れませんがよろしくお願いいたします
また、コピーのマクロで他の方法がありましたら併せて教えてください
No.1ベストアンサー
- 回答日時:
こんばんは、
ご質問の意味を理解していなかったらごめんなさい
結合セルを再設定するのが良いかな?
と言っても広範囲であれば、少し問題があるかも知れません。
>また、コピーのマクロで他の方法がありましたら併せて教えてください
方法は色々ありそうですが、示されているコードの場合、Excelのお節介を利用して再設定を利用すると
mRow1 = 4
mCol1 = 3
mRow3 = 4
mCol3 = 6
Application.DisplayAlerts = False
Cells(mRow1, mCol1).Copy
With Cells(mRow3, mCol3).MergeArea
.PasteSpecial Paste:=xlPasteFormulasAndNumberFormats
.UnMerge
.Merge
End With
Application.CutCopyMode = False
Application.DisplayAlerts = True
.MergeAreaは単セルに対してもエラーが返らないのでforより良いかも
消す場合も利用できるかな?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 2 2022/06/25 22:42
- Excel(エクセル) マクロで最終行から上に検索を逆にしたい 1 2022/05/17 18:27
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) vba 等間隔の列に対しての計算 6 2022/05/17 20:15
- Visual Basic(VBA) ExcelVBAのマクロについて。 9 2022/05/04 14:50
- Visual Basic(VBA) VBAコードが作動せず、どこに問題があるのか教えて下さい。 3 2023/06/13 13:20
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
- Visual Basic(VBA) 追記する列を増やしたい 2つのデータを検索・照合して元データにないデータを下記マクロで商品名を追記し 9 2022/10/05 10:50
- Visual Basic(VBA) マクロ実行時、自動で背景色を変えたい。 C列にあるチェックボックスをチェックするとB列に「TRUE」 4 2022/11/08 11:14
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル:マクロ「Application...
-
エクセルのアポストロフィを一...
-
エクセルの2ページ目の作り方
-
エクセルで勝手に「折り返して...
-
Excelでコピーした行の挿入を繰...
-
「選択範囲を解除してアクティ...
-
Excel 行の連続データを列に参...
-
EXCELシートをPowerPointにきれ...
-
Excelに、ダブルクォーテーショ...
-
EXCELのオートフィルの設定を変...
-
Excel)軽いデーターのはずなの...
-
Excelで、横並べのデータを縦並...
-
エクセルで、選択範囲の数値全...
-
【エクセル】行の高さを規則的...
-
エクセル 別シートへのコピー...
-
EXELで複数のとびとびのセルを...
-
メールソフト「サンダーバード...
-
エクセルで値だけコピーして背...
-
エクセルでの行数・列数を指定...
-
エクセル・数値が変化したらカ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル:マクロ「Application...
-
エクセルの2ページ目の作り方
-
エクセルのアポストロフィを一...
-
Excel 行の連続データを列に参...
-
エクセルで勝手に「折り返して...
-
Excelでコピーした行の挿入を繰...
-
EXCELのオートフィルの設定を変...
-
EXCELシートをPowerPointにきれ...
-
エクセルで、選択範囲の数値全...
-
Excel)軽いデーターのはずなの...
-
メールソフト「サンダーバード...
-
エクセルでの行数・列数を指定...
-
「選択範囲を解除してアクティ...
-
Excelに、ダブルクォーテーショ...
-
エクセル 別シートへのコピー...
-
エクセルで値だけコピーして背...
-
エクセルオートフィルで書式を...
-
EXELで複数のとびとびのセルを...
-
Excelで、横並べのデータを縦並...
-
エクセル・数値が変化したらカ...
おすすめ情報