2017-01-01から1年間の記事一覧
揮発性関数??? Application.Volatileメソッド 前回の akashi-keirin.hatenablog.com に、id:imihito さんからコメントをいただいた。 曰く、「きっと うまく いくでしょう」 `Excel.Application.Volatile`メソッドを使えば、その関数を揮発性関数にできた…
セルの再計算が通用しない場面に対応する 自作ワークシート関数 めちゃくちゃ条件分岐の多い、死ぬほどダルい表を作る必要があった。別に私の仕事でも何でもないんだけれど、泣きついて来られて仕方なく……。 自分の仕事でも何でもないから、仕事中にやるわけ…
初めての連想配列 「連想配列」とか、「Dictionary」という言葉は見たことがあったけれど、使ったこともなく、詳しく知ることもなかった。 自作クラスのエラーメッセージを管理するのがメンドクサイなーと思って、「そういえば……」とちょっと調べてみると、…
GetPhonetic関数がおかしい??? GetPhonetic関数の異状 Application.GetPhonetic関数は、2回目以降引数を省略すると、まだ返していないふりがな文字列を返すはず。 しかしながら、何か様子がおかしいのである。 たとえば、次のコード。 リスト1 標準モジ…
VBAの「コンストラクタに引数を渡せない」問題 VBAでクラスモジュールを使い始めたときに必ずぶち当たるのが、 なんでコンストラクタに引数が渡せねえんだよ! この金髪豚野郎!!!!!!!!! 問題だろう。(個人の感想です) これは本当に不便な話で、「VBAのイマ…
メール自動作成ツール~Outlookへの対応 このとき akashi-keirin.hatenablog.com akashi-keirin.hatenablog.com 作成したメール自動作成ツール、LotusNotes、Thunderbirdの両方に対応していて非常に便利なので、重宝している。 で、せっかくなのでOutlookに…
文字列から漢字のみ抽出する isKanjiメソッドを強引に使う 前回 akashi-keirin.hatenablog.com 作成したisKanjiメソッドの使いどころを無理矢理発明した。 準備 まず、 こんな風にシートを作っておいて、A1セルに「TextCell」、C2セルに「BaseCell」と名…
文字が漢字かどうかを判定するFunction 漢字かどうかの判定 文字が漢字かどうかを判定するロジックを考えた。 画像の出典はコチラのサイトっす。 Shift_JISの文字コード表を見ると、漢字は 889F以降に割り当てられているっぽい。 16進数の889Fってのは、 こ…
差込印刷のデータソースとの接続をVBAで行う Openイベントで接続する 差込印刷機能というのは非常に便利なので、Wordスキルがど素人のレベルでも使っている人は非常に多いと思う。私もそのクチ。ただ、データソースとの接続回りが非常に素人には分かりづらく…
タブ位置を気軽に設定するアドイン akashi-keirin.hatenablog.com これをもとに、アドイン化してみた。 コード ごちゃごちゃなしでコードを全部載せる。 リスト1 標準モジュール Public Sub タブ位置設定() Dim objDoc As Document Set objDoc = ActiveDocu…
Officeのヴァージョンに合わせて煽る 私は、別に玄人でも何でもないので、自作のツールに煽りAAを入れる。 中でも気に入っているのが、有名な「ち~んw」のやつw _________ / \ / /・\ /・\ \ |  ̄ ̄  ̄ | ち~んw | (_人_) | | \ |…
VBAで差込印刷のデータソースに接続する 差込印刷データソースの指定 以前、差込印刷のレコードごとにWordファイルを生成するということをやったことがあった。 akashi-keirin.hatenablog.com これはこれで、メチャクチャ便利で、重宝しているんだが、フォル…
ことごとく「背面」になっているテキストボックスェ…… 業務で引き継いだWordドキュメントがカオス…… 業務でWordドキュメントを引き継いだ。 で、そのWordドキュメントってのがひどいやつで、 40個ぐらい配置されているテキストボックスのレイアウトがことご…
直近のイベント発生日時を配列化するFunctionの修正 このとき akashi-keirin.hatenablog.com 作成したFunctionについて、対応できるイベントを増やそうとして、いろいろ不具合に気づいたので修正する。 コードへのリンクはコチラ。 1.無意味な判定をやめる…
直近のイベント発生日時を配列化するFunction このとき akashi-keirin.hatenablog.com 作成したFunctionは、 直近のイベント日時を取得するFunctionだったが、これをちょいと改造して、 直近○回分のイベント日時を取得して配列化するFunction にする。 改造…
Join関数というものがある Join関数 前回の記事 akashi-keirin.hatenablog.com に、 id:imihito さんからコメントをいただいた。曰く、 argsByArray 相当処理として、組み込み関数にJoin 関数というものが有ったりします ```vba Join(strArray, "! ") ``` …
配列を引数にすることはできるのか 配列を引数にしてみる プロシージャの引数に配列を指定することはできるのだろうか、と思ってやってみた。 とりあえず、 Public Function argsByArray(ByVal ar() As String) As String としてみたら、 こんなふうにいきな…
直近のイベント日時を取得するFunctionの改良 前回 akashi-keirin.hatenablog.com の続きです。 イベントコードを引数として受け取る 前回は、シャットダウン日時を取得するFunction、起動日時を取得するFunctionの2種類を作ったわけだが、記事中でも言及し…
Windowsの起動・終了時刻を返すFunction ※改良版はコチラ。 直近の起動・終了時刻を返す 前回の akashi-keirin.hatenablog.com のリスト1に手を加えて、 直近のシャットダウン日時 今回の起動日時 を取得するFunctionを作ってみる。 今回作成したコード と…
Windowsのシャットダウン時刻を取得する Windwosのイベントログを取得するには? Excel VBA質問箱 IV【74506】Re:VBAシャットダウン時刻取得にて、次のコードを発見した。 リスト1 標準モジュール Public Sub test() '……(1)' Call EnumShutdownDateTime(Ran…
VBAからタブを設定する 既定のタブ幅をVBAで操る タブ幅の設定って、結構めんどくさいなあと思っていた。んで、何とかVBAで操作できないものか、とちょっとggってみたんだが、これというものが見つからず(調べ方が悪いだけだと思うけど)、ちょいとマクロ記…
乱数を格納した配列を保持するクラス クラスへの移行 前回の akashi-keirin.hatenablog.com で、乱数を格納した配列を作るFunctionを作った。 実は、追記のところで、型指定でVariantを使うブサイクさ問題は解決ずみなんだが、乗りかかった船なのでやってお…
文字をランダムに並べ替える 乱数を作るのはめんどくさい ランダムに並べ替えるという作業をするときには、乱数を発生させて使えば良いのだが、毎度毎度乱数を発生させる処理を書くのは正直メンドクサイ。 最大数を与えたら、1~最大数をランダムに並べて配…
コンボボックスを動的に追加する フォームにコンボボックスを追加する コンボボックスやリストボックスは、ユーザからの入力を受け付けるインターフェースとしては便利なんだが、チマチマ作ることを思うと結構メンドクサイ。 コンボボックスの追加がラクにで…
差込印刷のデータソースにおけるVLOOKUP関数 akashi-keirin.hatenablog.com この続き。 問題は戻り値の「0」(ゼロ) 差込印刷のデータソースの表でVLOOKUP関数を使うと、検索値によって差し込みたいデータが決まっているようなときは非常に都合が良い。 た…
差込印刷のデータソースにVLOOKUP関数を使うとちょっと困る Wordの差込印刷は気が利く たとえば、Excelで こんな表を作っておいて、差込印刷のデータソースに指定しておく。 Wordの方では こんなふうに差し込みフィールドを設定しておく。 んで、差し込んだ…
「○箇月後の○曜日」割り出しFunctionの改良 akashi-keirin.hatenablog.com VbDayOfWeek型の引数 Twitterのフォロワー氏、及びid:imihito さんが教えてくださった。 vbSundayとかvbMondayって、単なる組み込み定数だと思っていたけれど、正体はVbDayOfWeek列…
○箇月後の○曜日の日付を求める自作Function 「1箇月後の直近の木曜日を求める」という作業が発生した。別に、暦を見たらいいんだけれど、もし今後たくさんの日付について同じ作業をする必要が生じたらメンドウなので、ちょこちょこっと「1箇月後の直近の木…
自作ツール「かんたんPDF変換」 3種類のPDF変換をこなすツールを自作した akashi-keirin.hatenablog.com akashi-keirin.hatenablog.com 上記の記事で、Wordドキュメントを編集中にサクッとPDF化するマクロを作ったわけだが、 いっそちゃんとしたツールとし…
WordドキュメントのアクティブなページのみPDF化 以前、 akashi-keirin.hatenablog.com コチラの記事で、クリック一発で編集中のドキュメントをPDF化するマクロを紹介した。 今回は、題名のとおり、 現在アクティブなページのみPDF化 するマクロを考える。 …