VBA

#VBA100本ノック 96本目

エクセルの神髄 の中の人がツイッターで行っている VBA100本ノック の96本目の解答記事です。 #VBA100本ノック 96本目DB1.accdbから以下の出力項目と抽出条件でデータを取得しシートに出力する。■出力項目取引先CD,取引先名,商品CD,商品名,単価,数量,金額金…

#VBA100本ノック 66本目

エクセルの神髄 の中の人がツイッターで行っている VBA100本ノック の66本目の解答記事です。 #VBA100本ノック 66本目ブック自身のあるフォルダ以下の全サブフォルダを検索し、自身と同一名称(拡張子含めて)のファイルを探してください。同一名称のファイ…

ADODB・ADOXを使ってxlsxファイルを作成してみるサンプル

はじめに VBAでは、Microsoft ActiveX Data Objects X.X Library(ADODB)を使うことで、既存のデータベースに接続して情報を取得したり、SQLを実行できます。 SQL Serverのようなちゃんとしたデータベースだけでなく、ExcelのブックなどもAccessのエンジン経…

【VBA実験】何回NotしてもTrueになるTrueを作る

VBA

あけましておめでとうございます。 今年もよろしくお願いいたします。 前書き 私が職場で使っているVBAのライブラリの中には、「何回NotしてもTrueになるTrue」を返すAPIを持つものがあります(一般には使われていないライブラリ)。 この「何回NotしてもTru…

タスクバーに通知を表示するPowerShellスクリプト

小ネタ 以下のようなメッセージを簡単に表示できるPowerShellスクリプト。 表示はそれぞれWIn 8.1 Win10 PowerShellスクリプト 本体。適当な場所に「○○.ps1」として保存する。 param( [string]$Prompt = 'メッセージ', [string]$Title = '通知', $CallBack =…

Worksheets.Item()がObject型を返す理由の妄想

結論 シートモジュールのせい。 (18/07/07 追記) 引数にインデックス・名前の配列を渡すと、Excel.Sheets型で返されるため、純粋に「返すオブジェクトの種類が固定ではない」せいとなります。 Dim s As Object Set s = Worksheets.Item(Array("Sheet1", 2)…

Excelの選択しているセルの行・列に色を付ける(書式を設定する)

Twitterで面白そうなネタを見つけたのでやってみる。 はまさんのツイート: "アクティブセルの行全体に色を付ける方法です。横に長い表の場合は、便利です。 https://t.co/wJr1nNaxxX… " アクティブセルのある行・列を目立たせる:エクセルマクロ・Excel VBAの…

メモ:VBAからDiscordにメッセージを送信する

完全に見様見真似のメモ。 ほぼこちらの内容をVBAにしただけ。 アプリケーションからDiscordのチャンネルにメッセージを送る - Qiita webhookのURLを取得 この辺から取得する。 設定 > テーマ > 詳細設定 >開発者モード のチェックが必要かも 当然ながら、自…

VBA ListRowを使いやすくするクラス

はじめに ListRow オブジェクト (Excel) はExcelのテーブルの行を表すオブジェクトです。 自分のテーブル(ListObject)の使い方 ワークシート関数のVLOOKUPのようなことをマクロから行うことが多いです。 単純な検索であればVLOOKUPやMATCH+INDEX関数で大丈…

VBA用LINQ(作成中)

VBA

VBAでLINQ to Objects 「っぽい」ことができるものを作成中。 →OneDrive内の「M_Sample」モジュール GitHub - imihito/VBALinq(碌に使ったことがないのでちゃんと使えてるかどうか…) 基本方針 やりたいこと VBAで要素の集合に対してLINQ to Objects 「風」…