- ベストアンサー
エクセルVBAで連続してメッセージで判断する印刷コードの作成方法
- エクセルVBAを使用して、2つのファイル(Aファイル、Bファイル)の印刷をメッセージで判断させるコードを作成する方法について教えてください。Aファイルが複数あり、「卒業生」という文字を含むファイルをすべて印刷するように設定し、Bファイルの中の「平成19年度」シートのみを印刷するように設定します。
- 質問文章の要点は、エクセルVBAを使用して2つのファイルの印刷をメッセージで判断させるコードを作成する方法です。Aファイルは「卒業生」という文字を含むファイルをすべて印刷し、Bファイルは中の「平成19年度」シートのみを印刷します。
- エクセルVBAを使って2つのファイル(Aファイル、Bファイル)の印刷をメッセージで判断するコードの作成方法について教えてください。Aファイルは「卒業生」という文字を含むファイルをすべて印刷し、Bファイルは中の「平成19年度」シートのみを印刷します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 > 質問のようなファイルの条件でコードの表現を... 条件そのものを理解出来てない部分があります。 また、もし最初からまる投げのつもりなら、それはどうかと思うところもあります。 例えば、前回フォルダ内の一覧に関して回答しましたが Aファイルは殆どその応用で良いと思います。 セルに書き出す代わりに Open して Printout すれば良いのです。 ファイル名に「卒業生」を含む物だけが対象ならば、InStr 等で判断出来ると思います。 Bファイルについては、マクロ記録を録って、フルパス部分の一部を 前回答のように Thisworkbook.path で置き換えてやればOKな気がします。 マクロ記録は融通が利きませんが、少し書き換え出来るようになれば結構役に立つ物になりますよ。 色々試して上手く行かないようなら、少しまとを絞って質問してみて下さい。
その他の回答 (1)
- papayuka
- ベストアンサー率45% (1388/3066)
単純に IF を並べるだけで良いと思いますけど、、、 Sub Test() Dim myMSG As String myMSG = "Aファイルを印刷します。" & vbCrLf & "よろしいですか?" If MsgBox(myMSG, vbYesNo + vbQuestion, "印刷") = vbYes Then 'ここに処理 MsgBox "Yesが押された" End If myMSG = "Bファイルを印刷します。" & vbCrLf & "よろしいですか?" If MsgBox(myMSG, vbYesNo + vbQuestion, "印刷") = vbYes Then 'ここに処理 MsgBox "Yesが押された" End If End Sub
お礼
いつもありがとうございます。「ぜんぜん成長しないやつだな」と思われてそうで、恐縮しています。 恐縮ついでと言っては何ですが、質問のようなファイルの条件でコードの表現を教えていただけると幸いです。
お礼
ご回答ありがとうございました。もう少し勉強が必要なようです。お付き合いいただきありがとうございました。