Excel2007で作った97-2003形式の請求書ファイルを使っています。自分でマクロを使って作っているのですが、今回エラーがでて、マクロが動かずに困っています。
エラーの内容は、
『実行時エラー 1004:
この操作を行うには、すべての結合セルを同じサイズにする必要があります。』
というものです。
デバッグをクリックすると、添付画像の様に、請求書sheetの備考欄に貼付け処理を指示した部分がマーキングされています。
このファイルは6sheetあり、1枚目の入力sheetから、2枚目の売上帳sheet・3枚目の請求書sheetに入力内容がコピペで飛ぶように作っています。マクロの内容は主にコピペです。
ここで分からないのが、2枚目の売上帳sheetには問題なく、3枚目の請求書sheetに飛ばそうとすると上記のエラー表示が出て止まります。
試しに請求書sheetの結合したセルを全解除してマクロを起動させるとエラーは出ませんでした。
売上帳sheetにはマクロ操作での転記部分に結合セルはなく(同sheet内には結合セルは存在する)、入力sheetには転記の元セルには結合セルが含まれています。請求書sheetには多数結合セルが混じり、転記部分にも結合セルは含まれています。やはり結合セルが原因でしょうか?
これまでいろいろなパソコンでExcel2007~2013までは問題なく動いていました。
OSもXPからVista、win8、win8.1、アップグレードしたwin10と昨年購入した初めからのwin10とすべて問題なく動いていました。
Excel2016のデメリットでしょうか?
何か対処法はないでしょうか?
原因が受けsheet側の結合セルだとすれば、マクロに関係する部分のセルの結合をすべて解いてやらなければならないのでしょうか?
他に良い案があれば教えてください。
パソコンに詳しくなく、すべて独学で質問サイトなどで助けていただきながらやってきているので、またまた困っています。
宜しくお願いします。
No.7ベストアンサー
- 回答日時:
Excelのヘルプでは、次のような説明になっているのですが、どうしてうまくいくのかはわかりません。
手動でいろいろ試していたら、これでうまくいっただけなんですよね。結果オーライですいません。xlPasteValues→値を貼り付けます
xlPasteValuesAndNumberFormats→値と数値の書式を貼り付けます。
そうだったんですか!
本当にお手数をかけさせてすみません!!
でも大変助かりました。
今のところは他に不具合なく動いています。
元々初心者の私が自分でソフトっぽく作ったファイルなので、バグが出ては改良して・・・、というのを繰り返して使っているので、今回も同じように使っていきます。
この度は本当にありがとうございました!
No.6
- 回答日時:
わたしはExcel2010を使っているのですが、補足して頂いた条件で実行してみたところ、同じエラーが出ました。
「Excel2007~2013までは問題なく動いていました」とのことですが、どうしてでしょうね?とりあえず原因は置いといて、解決策を模索してみました。
下記のようにすると一応は動いたのですが、もしかしたら他の部分に影響が出るかもしえません。その辺は自己責任でお願いします。
Paste:=xlPasteValues
↓
Paste:=xlPasteValuesAndNumberFormats
No.4
- 回答日時:
No1さんの要求通り、該当プロシージャ(Sub~End Subまで)を添付すべきです。
エラーが発生した行だけだと、難しいと思います。それから「請求書備考NO.1」の名前で参照しているセル範囲はどこになりますか?
すみません。プロシージャの意味が分かっておらず、該当行のみしか記載してませんでした。
補足に追加しました。
あと、「請求書備考NO.1」は請求書sheetのJ62とK62の結合セルです。
ここを起点に、10行分が転記されるようになっています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
高校生はアルバイトするべきだろうか?賛成だったら「賛」、否定だったら「否」を文頭においてあなたの意見を教えてください。
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
VBAでの結合セルのコピー&ペースト
Excel(エクセル)
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
エクセルマクロで不特定なファイル名を使用するには
Excel(エクセル)
-
-
4
excelのマクロで該当処理できなければ飛ばして進むにはどうすればよいのでしょうか
Visual Basic(VBA)
-
5
実行時エラー 438になった時の対処法を教えて下さい。
Visual Basic(VBA)
-
6
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
7
エクセルのマクロで結合セルに値を貼り付けたい
Excel(エクセル)
-
8
エクセルVBA 最終行を選んで並び替え (空白セルを一番上に表示したい)
Excel(エクセル)
-
9
マクロの「SaveAs」でエラーが出るのを解消したいです(再)
Visual Basic(VBA)
-
10
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
11
マクロで空白セルを詰めて別シートに転記
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでセルをクリックする...
-
vbaで指定したセルより下の行を...
-
【VBA】アクティブセルだけ背景...
-
エクセル:セルの色のコード番...
-
IF関数で違う値もTRUEになる
-
Excelマクロ セルを行頭に移動
-
エクセルマクロで「セルのサイ...
-
Excelでプルダウンからフィルタ...
-
ダブルクリックでセルに色をつ...
-
ファイルサーバー上のexcelファ...
-
excel マクロでの特殊文字入力方法
-
マクロのデータ削除
-
VBA Rangeの足し算
-
エクセル アクティブセル領域...
-
セルをクリックしたら色を変え...
-
エクセルで文字を入力したら数...
-
【マクロ】1つのセルから結合...
-
Excel VBA で色付きのセルの値...
-
Excel VBA:フォーム←→セルのア...
-
VBAマクロ実行時エラーの修正に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
vbaで指定したセルより下の行を...
-
エクセルでセルをクリックする...
-
VBAでの SendKeysの変数指定方法
-
Excel VBA:フォーム←→セルのア...
-
Excelマクロ セルを行頭に移動
-
ファイルサーバー上のexcelファ...
-
マクロのデータ削除
-
セルをクリックしたら色を変え...
-
エクセルマクロで「セルのサイ...
-
(エクセルVBA)セルを左クリッ...
-
Excel VBA で色付きのセルの値...
-
【VBA】アクティブセルだけ背景...
-
IF関数で違う値もTRUEになる
-
エクセル:セルの色のコード番...
-
Excelでプルダウンからフィルタ...
-
EXCEL(VBA) セルをクリックし...
-
excel マクロでの特殊文字入力方法
-
【マクロ】1つのセルから結合...
-
ダブルクリックでセルに色をつ...
-
VBA Rangeの足し算
おすすめ情報
エラー部分の黄色で表示されているのは、
Range("請求書備考NO.1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False '請求書NO.1を起点に値の貼り付け
と表示されています。
ママチャリさん、すみません。
質問の仕方がよく分かっておらず補足させていただきます。
Sub 請求内訳書備考1()
Worksheets("売上入力").Activate '売上入力シートをアクティブにする
Range("G8:G17").Copy '請求内訳書No.1への転記部分をコピー
Worksheets("請求書").Activate '請求書シートをアクティブにする
Range("請求書備考NO.1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False '請求書備考NO.1を起点に値の貼り付け
End Sub
です。
試してみました。
2010でも2016でもエラーは出ずにうまくいきました。
記載したプロシージャ以外に、あと三個(請求書備考2、請求書備考3、締め日)同じようなコピペのマクロがあったのですが、そちらも同じように直すと、問題なく動きました。
調べてみると、この4個はどれも貼り付け先が結合セルになっていました。
最後に教えていただきたいのですが、今回追記した「AndNumberFormats」にはどういう意味があるのでしょうか?
VBAのコード表やコードの意味などで調べてみましたが、分かりません。
今後の勉強のために教えていただけると助かります。
お願いします。