サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
iPhone 16
peiyorin.cocolog-nifty.com
久しぶりのOutlookネタです。最近訳あってThunderbirdからOutlookに戻って来ました。 久しぶりに使ってみると、Thunderbirdでは即座に送信されるのではなく、送信前のチェックによって誤送信を防止するための機能が幾つかありました。しかしOutlookでは標準装備されていないことが分かり、使い勝手が悪いのでVBAで作ってみました。 送信ボタンを押下した時に送信メールに対してチェックします。 作成した機能は以下のとおり。 (1)件名チェック 件名が未入力の場合、そのまま送信するかどうかの確認メッセージを表示して次のチェックにいきます。 いいえを押下すると送信を中止することができます。 (2)添付ファイル忘れチェック 本文か件名に添付といった文言が含まれている場合、ファイルが添付されているかチェックします。 添付ファイルが無い場合、そのまま送信するかどうかの確認メッセージ
今回はカスタムツールバーのボタンからマクロへ引数を渡す方法です。 いろいろ機会のある度に調べたり試したりして出来なかった長年の疑問がやっと解決してとてもスッキリした気持ちです。 複数のボタンに同一のプロシージャを設定すれば当然同じ処理が実行されますね。でも、ボタンによって微妙に処理を分けたいときに、ボタン数分プロシージャを作成するのはロジックが冗長的になりメンテナンスが煩雑になります。そこで、ボタンから実行するプロシージャは一つで、どのボタンから実行されたかを引数で判定すれば、共通処理とボタン固有のロジック部分とでスッキリとします。 ではその手順を以下に記述します。 (1)プロシージャ側の記述(イメージ) プロシージャはPublicで作成します。Privateだとボタンから呼び出せないからです。 引数はOptionalで受け取ります。 Public Sub Main(Optional pA
今回はOutlookメールの添付ファイルを保存する機能について書いてみたいと思います。前回のOutlookカスタマイズ記事でカスタムメニューの画像を出していたのでネタばれだったかもしれませんね。 1つのメールに添付されているファイルを保存する機能は標準でありますね。メニュー「ファイル」→「添付ファイルの保存」→「すべての添付ファイル」です。でも複数メールの添付ファイルを一括保存する場合、あれっ?できない?Microsoftさん!?。。。 2010.9.10加筆 保存先に同じファイル名が存在したら重複しないように枝番を付加するように改良したヴァージョンはこちら ということで作成したのが以下の処理です。 Sub 選択メールの添付ファイルを指定フォルダに一括保存() Dim cDir As String, oSel As Object, oF As Object Dim myOlApp As N
久しぶりのVBAネタです。 それもOutlookです。 仕事で1ヶ月に1度くらいの頻度で自動的にメールを送信したいという要望が出ました。送信要件が複数あり、送信タイミングもばらばらといった具合です。 そこで予めExcelにその情報を設定しておいて、マクロで毎日送信タイミングを確認すればよいと考えました。 以下がその仕様です。 ■Excel側 送信要件毎にシートを分け、そのシートには、 ・メールタイトル(送信要件) ・メール本文 ・次回送信予定日 ・添付ファイル有無 ・送信者名(複数) ・送信者アドレス(複数) ・CCアドレス(複数) ・BCCアドレス(複数) といった情報を持たせます ■OutlookVBA側 以前、◆Excel VBA(ファイル起動と同時にマクロを実行)で書いたPrivate Sub Application_Startup()にマクロを登録しておきます。これでOutloo
Excel情報を読み込んでメールを自動送信する方法 その2を書いてみたいと思います。 送信情報を管理するExcel側と実際に送信するOutlook VBAです。 ■Excel側 こんな感じにしてみました ■OutlookVBA側 moduleに以下のソースを貼り付けて実行してみましょう。 (1)メールの送信タイミングになるとこのダイアログを出します (2)”はい”であれば処理を継続し、添付ファイル有無=”有”であればこのダイアログを出します 添付したいファイルを複数選択します (3)送信フォルダに人数分のメールが作成されます 解説ですが、自動送信管理.xlsを読み込み、セルの情報を取得します。 自動送信管理.xlsには複数シート定義する前提で全てのシート分繰返し処理します。 各シートの次回送信予定日と当日を比較して送信タイミングであれば処理を続行します。 以下のソースではわざと条件をひっく
VBAの話題は久しぶりになりますが、今回はOutlook VBAについて書いてみます。 OutlookでVBAってちょっとマイナーな気がしますが皆さんはいかがでしょうか?ネット上でも話題は少ない気がします。Outlookと自動化はあまり関係が無いような感じです。自分自身でもあまりアイデアがありません。 とっかかりとして、こんなことが出来るのだというところで、選択したメールの情報をExcelの一覧にしてみます。メールの内容をExcelで管理できるようになるので何かと便利です。以下がその例です。 Sub 選択メールの情報をExcel一覧化( ) Dim myOlApp As New Outlook.Application Dim myOlExp As Outlook.Explorer Dim myOlSel As Outlook.Selection Dim MsgTxt As String,
今回は職場で問題になったExcelブックのファイルサイズ肥大化解消について書いてみたいと思います。ネットで検索するといろいろと情報はありますが、私の経験から確実にファイルサイズが縮小するワザをご紹介します。 そもそもExcelブックのファイルサイズの肥大化とはなにかというと、あるファイルをずっと修正したりしていくとファイルサイズがどんどん大きくなるということです。これはAccessでもWordでも言える事です。ではなぜこのようなことが起きるのでしょう。その原因が分かれば解決法も分かります。Excelについて言えば原因と解決方法は以下のようなものです。ちなみにExcel2000/2003で有効であることを確認しています。 ■原因 (1)ExcelVBAを何度も修正して保存を繰り返すことによりファイルサイズが増大 (2)「ブックの共有」設定で複数人がファイルを更新することにより、”変更履歴”が
今回はOutlook VBAのカスタマイズと配布方法について書いてみたいと思います。 前回は「Visual Basic Editor」のVbaProject.OTMに標準モジュールを追加して処理を記述して、マクロから実行したところまででしたね。それでは、Outlook VBAの処理を実行する方法として、2通りご紹介します。まずは標準ツールバーにアイコンを追加してマクロを割り当てて見ましょう。 ツールバーにアイコン追加画像 Outlookのツールバー上で右クリックし、「ユーザ設定」画面→「コマンド」タブのマクロを選択すると、前回作成した選択メールの情報をExcel一覧化が表示されているので、左ボタンでぐっとつかみツールバー上にドラッグ&ドロップすればOKです。 この方法は自分だけでマクロを使う場合は良いですが、不特定多数の人に使用してもらうにはちょっとやっかいです。VBAマクロを配布するには
このページを最初にブックマークしてみませんか?
『peiyorin.cocolog-nifty.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く