Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


13298 / 13646 ツリー ←次へ | 前へ→

【6083】複数の命令を・・・ miura 03/6/16(月) 11:49 質問
【6091】Re:複数の命令を・・・ こうちゃん 03/6/16(月) 13:27 回答
【6098】Re:複数の命令を・・・ miura 03/6/16(月) 15:49 お礼

【6083】複数の命令を・・・
質問  miura E-MAIL  - 03/6/16(月) 11:49 -

引用なし
パスワード
   はじめまして
VB初心者です。宜しくお願いいたします。
質問2つあります。

Q1 本を参考に作ったのですが、緑(エラー)になってます。
どこが間違っているのでしょうか?教えてください。
シート1をシート1の後ろにコピーする。
シート1のC6:C14とG6:G14のセルをクリアする。

Sub CopyWorkSheets()
  Worksheets("Sheet1").Copy After:=Worksheets("Sheet1")
End Sub
Sub ClearContents()
  ActiveWindow.RangeSelection = Empty
  'WorkSheets("Sheet1").Range("C6:C14").ClearContents
  'WorkSheets("Sheet1").Range("G6:G14").ClearContents
End Sub ↑ココの下2行が緑(エラー)です。

Q2 上の2つのVBを一つの指示で実行する方法を教えてください。

以上、お手数ですが宜しくお願いいたします。

【6091】Re:複数の命令を・・・
回答  こうちゃん E-MAIL  - 03/6/16(月) 13:27 -

引用なし
パスワード
   miuraさん、こんにちは

>Q1 本を参考に作ったのですが、緑(エラー)になってます。
緑はエラーでなく、コメントでしょう。
先頭のアポストロフィ外してみてください。
WorkSheets("Sheet1").Range("C6:C14").ClearContents
WorkSheets("Sheet1").Range("G6:G14").ClearContents

>Sub ClearContents()
>  ActiveWindow.RangeSelection = Empty
>シート1のC6:C14とG6:G14のセルをクリアする。
だけなら、この行は不要じゃないですか?
>  'WorkSheets("Sheet1").Range("C6:C14").ClearContents
>  'WorkSheets("Sheet1").Range("G6:G14").ClearContents
>End Sub ↑ココの下2行が緑(エラー)です。

>Q2 上の2つのVBを一つの指示で実行する方法を教えてください。

1)2つのプロシージャを連続してCallする別のプロシージャを作り、そのプロシージャを実行する。
Sub Test()
 Call CopyWorkSheets
 Call ClearContents
End Sub

2)1つのプロシージャにまとめる
Sub CopyWorkSheetsAndClearContents()
  Worksheets("Sheet1").Copy After:=Worksheets("Sheet1")
  WorkSheets("Sheet1").Range("C6:C14").ClearContents
  WorkSheets("Sheet1").Range("G6:G14").ClearContents
End Sub ↑ココの下2行が緑(エラー)です。

#ClearContentsというプロシージャ名は予約語と一緒ですからお使いにならないほうがいいと思いますよ。

【6098】Re:複数の命令を・・・
お礼  miura E-MAIL  - 03/6/16(月) 15:49 -

引用なし
パスワード
   うぅお!完璧です。
しかもクイックレスポンス。有難うございました。

13298 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free