アプリ版:「スタンプのみでお礼する」機能のリリースについて

EXCELVBAで給料明細を作成しているのですが
全ての処理が終わったあとに
保存

印刷

EXCEL本体を閉じる

という作業を最後に行いたいのですが保存と閉じ方がわかりません。

初心者なのでお手柔らかにご教授お願いします

シート名は明細書元

--------------------------------------------------
Worksheets("明細書元").PrintOut '印刷する
ThisWorkbook.Saved = True
Application.Quit

---------------------------------------------------

省略しすぎでしょうか?

これ以前の処理というのは
(1)日にちを入れる
(2)セルの値についてのチェック(13項目でFor文で配列を使用)
(3)所得税、健康保険料、厚生年金、雇用保険の計算(For文)
(4)入力シートというものがありそこに入力された名前の数だけ明細書元のシートに書いてあるものがコピー&貼り付け(主に名前、基本給、通勤手当、調整分、住民税、(3)で計算したもの)
(5)総支給額、控除合計、差引支給額の計算、表示
を行いました。

もし必要なソースがあれば言ってください。
再度貼り付けさせていただきます。
以前『VBAマクロを使って給料明細を作成したい』でお世話になりました。

A 回答 (3件)

こんな感じはいかがでしょうか?


ちなみに私のパソコンでは動作しました♪
ただ、西暦での保存になってしまぅのですが。。。
**********************
Dim Namae As String  'ファイルの名前定義
Namae = DatePart("yyyy", Now) & "年" & DatePart("m", Now) & "月" & ".xls"  '現在より年・月を取り出してファイル名作成
ActiveWorkbook.SaveAs Filename:= _
"C:\Documents and Settings\MEGWS009\デスクトップ\" & Namae, FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False

**********************

ファイルの保存場所は
"C:\Documents and Settings\MEGWS009\デスクトップ\"
になってる部分をご自分の保存したい場所に変更して下さい♪

参考でもお役に立てればうれしいです♪
    • good
    • 0
この回答へのお礼

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

やってみたらできました。

お返事遅くなってしまいもうしわけありません

お礼日時:2008/09/26 09:03

>処理した日の日付を題名に保存をかけたいのですが



その場合はやはり SaveAsメソッドを使わないと。

Worksheets("明細書元").PrintOut
ActiveWorkbook.SaveAs Filename:=ファイル名
Application.Quit

こんな感じでしょうか。当然どこかで変数「ファイル名」に必要な
ファイル名を設定する処理が必要ですが、その程度は分かりますよね。

詳細は、ヘルプの「SaveAsメソッド」を参照して下さい。
    • good
    • 0
この回答へのお礼

はい!!

わかります。

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

返信遅くなってしまい申し訳ありません

お礼日時:2008/09/26 09:00

それこそ



Worksheets("明細書元").PrintOut '印刷する
Application.Quit

だけでいいはずです。Quitを実行するときは、ごく普通に「保存せず終了」
したときと全く同じ動きをしますから、「保存しなくて良いですか」と言う
ダイアログが自動的に出てきますので。

上書き保存するだけなら、ヘンにコードを書くよりExcelに任せてO.K.ですよ。
    • good
    • 1
この回答へのお礼

ありがとうございますw


もうひとつあるんですが処理した日の日付を題名に保存をかけたいのですがどうしたらいいでしょうか?

9月に処理をした場合はその時処理したやつであれば平成20年9月分で名前を付けて保存になり、10月であれば平成20年10月分というタイトルで名前を付けて保存にしファイルを増やしていきたいのです。


お忙しいとは思いますがご教授お願いします

お礼日時:2008/09/24 21:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!