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

解決済みの質問

エクセルVBA ブックのクローズの記入の仕方

エクセル2002を使用している初心者です。
エクセルを閉じる操作をしたときに、指定シートのあるセルをクリアして、
また別のシートについても、そのシート内のあるセルの文字を指定のセルにコピーしたいのです。(コピー先はセルの色を塗りつぶしたり、大きいフォントを使用しているので、その書式は変更せず、文字データだけをコピーしたいのです)
このVBAの書き方を教えていただけないでしょうか。

VBAは書き込む場所はThisWorkbookですよね。
VBAの種類は、Private Sub Workbook_BeforeClose(Cancel As Boolean)

End Sub
ですよね。

すみません。この中に入れるコードがわからないのです。

クリアにするセルは、
シート名 利用券 の F15,F16,F17,Y16,AO16,AX16 です。

コピーするセルは、
シート名 施設 の セルG6 を セルC3 にコピーしたいのです。
(セルC3は、セルの色を塗りつぶしてあり、フォントも大きめを指定してあるので、その書式を活かしたままにしたいのです。また、セルC3は入力規則を設定していて、文字入力はできないようになっています。コピーはできましたけど・・・)

いろいろ述べてすみません。

どうか教えてください。よろしくお願いいたします。

投稿日時 - 2007-01-19 17:49:08

QNo.2679013

困ってます

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

#1、#2です。 すみません。

お気付きでしょうが、一部間違えました。

>F15,F16,F17,Y16,AO16,AX16 

ですから

("AX16,AO16,Y16,F15:H15")
 ↓
("AX16,AO16,Y16,F15:F17")

修正をお願いします。

投稿日時 - 2007-01-19 20:09:36

お礼

細かいところまで気を配っていただき、有難うございました。

大変助かります。

大感謝です。

ありがとうございました。

投稿日時 - 2007-01-19 20:58:07

ANo.3

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

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

回答(3)

ANo.2

追加です。

Private Sub Workbook_BeforeClose(Cancel As Boolean)
'クリア
ThisWorkbook.Sheets("利用券").Range("AX16,AO16,Y16,F15:H15").ClearContents
'コピー
ThisWorkbook.Sheets("施設").Range("C3").Value = ThisWorkbook.Sheets("施設").Range("G6").Value

End Sub
書式には影響しません。

投稿日時 - 2007-01-19 20:02:12

お礼

わー。コピーの方法まで教えていただいて、なんとご親切に。

ありがとうございました。

投稿日時 - 2007-01-19 20:59:21

ANo.1

とりあえず クリアするには

Private Sub Workbook_BeforeClose(Cancel As Boolean)

ThisWorkbook.Sheets("利用券").Range("AX16,AO16,Y16,F15:H15").ClearContents

End Sub

で、良いかと思います。

投稿日時 - 2007-01-19 19:47:59

お礼

ClearContentsですか。助かりました。

ホッとしました。

大変感謝いたします。

投稿日時 - 2007-01-19 19:51:16

あなたにオススメの質問