こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルVBAで作ったコードを実行しても動作しない

エクセルVBAで『データワン』シートと『データツー』シートと『まとめ』シートがあり、
『データワン』シートと『データツー』シートの全ての情報を
『まとめ』シートにコピーしてまとめるようにしました。
マクロを実行するには、Visual Basicを開いてF5を押しています。

それを『データワン』シートか『データツー』シートの中身の一部分でも変更すると
そのときに自動的にマクロが実行されるようにしたいです。

Microsoft Excel Objectsのsheet1とsheet2(sheet3は空白のまま)に

Private Sub worksheet_change(ByVal Target As Excel.Range)
Call macro1
End Sub

を入れ、
次に、標準モジュールのModule1に

Sub macro1()
With Worksheets("まとめ")
.Cells.ClearContents
On Error Resume Next
Worksheets("データワン").Range("C1:BE50").SpecialCells(xlCellTypeConstants).EntireRow.Copy _
Destination:=.Range("A1")
Worksheets("データツー").Range("C1:BE100").SpecialCells(xlCellTypeConstants).EntireRow.Copy _
Destination:=.Range("A" & .UsedRange.Rows.Count + 1)
End With
End Sub

を入れました。

『データワン』シートと『データツー』シートの情報を書き換えても
手動でマクロを実行してみましたが、何も起こりません。
書き方が間違っているのでしょうか?

投稿日時 - 2011-09-07 18:06:16

QNo.6995810

すぐに回答ほしいです

質問者が選んだベストアンサー

おはようございます、かな?
分りやすい補足リンクありがとうございます
コピペしてon error resume nextをコメントブロックしてマクロを実行しましたら、エラーでましたね
該当のセルがないって言われました
データあ・データい・データうも出ます
で、データあに適当に文字を入れるとエラーはデータい・うになり、データいにも適当に文字を入れるとエラーはデータうだけになりました
結果的にはシートに何か1つでも文字を入れないとダメなんじゃないですかね?
そのエラー回避のon error resume nextだと思われます
これでダメだったら分らないな~・・・
すでに解決済みでしたら、すみませんっ!

投稿日時 - 2011-09-09 01:50:00

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

こんばんは
こちらEXCEL2003ですが、動きましたよ・・・?
On Error Resume Next をコメントブロックして実行してみて下さい
何か分るかもしれません

投稿日時 - 2011-09-07 18:54:53

補足

ありがとうございます。
いろいろ試してみましたが、やはりダメでした。

↓その作業画面を画像にして、アップロードしました。
http://blog-imgs-17.fc2.com/s/k/s/sksfiosjdijf34

投稿日時 - 2011-09-08 15:26:31

お礼

すみません、こちらでお願いします。
http://blog-imgs-17.fc2.com/s/k/s/sksfiosjdijf34/newfile_sample.html

投稿日時 - 2011-09-08 15:27:46

あなたにオススメの質問