ExcelVBA, クラスの操作

クラスモジュール内で配列を使う方法 Class1 の内容 標準モジュール(Module1) の内容 実行結果 5 7 標準モジュール内で配列を使う方法 次はインスタンスを複数生成するバージョン。けど、実用的ではありませんね。 Class2 の内容 標準モジュール(Module2) の内容 実行結果 ...

ADOXの操作, ExcelVBA

このページは、個人的な備忘録で申し訳ない内容です。 環境:Excel2010 ADOX 複数のテーブルを外部結合するクエリーを実行したときに、「・・・演算子がありません。」のエラーになる、その解決方法です。 以下のように LEFT JOIN を ( ... ) でくくることで解決します。

日記地震

体感では気が付くことの出来ない、非常に小さな地震が東京湾では定期的に発生しています。 この地震は、日に0~2回程度で発生するのですが、時々、発生回数が短期間の間に増加して群発地震に至ることがあります。 たとえば、2019年7月11日~8月10日に東京湾で発生した地震の位置や回数などを示した画像がある ...

ExcelVBA, クラスの操作, フォームの操作

同じコントロールイベントを共通化する前の状態 まずは、共通化する前の状態を説明しておきたいと思います。 UserForm1のオブジェクト テキストボックスを3個設置 テキストボックスのオブジェクト名は上から順番に TextBox1 TextBox2 TextBox3 です。 UserForm1のコー ...

ExcelVBA, ファイルの操作

ファイルのコピー ※同名ファイルが存在していた場合は、上書きされます。 ファイルの削除 エクセルファイルと同一パスにあるTEST01.txtファイルを削除 ファイルの移動 ※移動先の「"E:\保管\TEST01.txt"」を「"E:\保管\SAMPLE01.txt"」にすることで名前の変更ができます ...

ExcelVBA, ファイルの操作

1行ごとに読み込み 下記の例ではカンマを区切り文字としているため「\1,000」の様なカンマが含まれた文字列が存在する場合は、 列を正しく分割できません。 この問題点を回避したい場合は「2.シートにインポート」を使用してください。 CR+LF改行コードの場合 カンマ区切りのCSVファイルを1行目から ...

ADOXの操作, ExcelVBA

ADOX 関連ライブラリーの有効化 下記のライブラリーがADOX関連のライブラリーになります。 Microsoft ActiveX Data Objects x.x Library Microsoft ADO Ext. x.x for DDL and Security マクロの編集画面(Micros ...

ExcelVBA, セルの操作

セル ハイパーリンクの削除 セルA1のハイパーリンクを削除する例 ※罫線と背景色も、一緒に消えます。 ※罫線と背景色を残したい場合は、下記のハイパーリンクの解除を参照ください。 ハイパーリンクの解除 セルA1のハイパーリンクを解除する例 ※4行目でハイパーリンクを解除しただけでは、文字は青色、文字下 ...

ExcelVBA, ブックの操作

ブックのパスを取得 自身のブックのパスを表示 開いているブックの、パスを全部表示(イミディエイト画面に表示)

ExcelVBA, ブックの操作

フルネーム(パスとブックの名前)の取得 自身のフルネームを表示 開いているブックの、フルネームを全部表示(イミディエイト画面に表示)

ExcelVBA, ブックの操作

ブックの名前を取得 自身のブックの名前を表示 開いているブックの、名前を全部表示(イミディエイト画面に表示)

ExcelVBA, ファイルの操作

ファイル削除の基本 ファイル削除は killステートメント または CreateObject関数 を使用します。 kill ステートメント ※ワイルドカードの使用が可能です。 ※ファイルが存在しない場合、エラーになります。 ※ゴミ箱には入りません。完全削除になります。 CreateObject("S ...

日記

三位一体とは、キリスト教において 父は父神であり 子は神の子であり 聖霊は聖神であり、これら三つは「一体」であり、そして全能の神とする教えです。 カトリック教会・聖公会・プロテスタント・正教会・東方諸教会といった大半の教派が、この教えを共有しているそうですよ。 しなしながら、このキリスト教に深く関わ ...

日記

インド、熱波の死者100人超す 温暖化進めば生存の限界に到達も 熱波の基準は地域によって異なり、首都ニューデリーでは45度以上の日が2日続くと熱波宣言が出る。昨年、熱波宣言が出された回数はインド全土で484回を数え、2010年の21回に比べて激増した。この期間の死者は5000人を超えた。猛暑は今年も ...

ExcelVBA, ブックの操作

ExecuteExcel4Macro メソッドを使用すれば、ブックを開くことなく、セルのデータを読み込むことが可能です。 ちょっとしたセルのデータを抽出するだけなのに、多数のブックを開いたり、同じく巨大なブックを開いたりする場面で、ExecuteExcel4Macro を使用すれば、ブックを開かない ...

日記

2019年6月26日、千葉県中部の秘境へ小旅行、予想外に暑かったものの晴天に恵まれました。 いすみ線の発車まで20分間の待ちがあったので、その間に駅近辺を写真撮影。 上総中野駅(かずさなかのえき) 千葉県いすみ市の大原駅から、千葉県夷隅郡大多喜町の上総中野駅までを結ぶいすみ鉄道の鉄道路線。 小湊鐵道 ...

ExcelVBA, ExcelVBAのエラー

よくある原因は、 再帰処理の中でローカル変数とメソッドの情報がスタック領域に格納しきれなくなり発生する。そんなところです。 下記は、このエラーが発生する再帰処理のサンプルコードです。 シンプルなふたつのプロシージャ間で再帰処理した場合の、エラーで停止するまでの再帰回数をカウントしてみました。 結果は ...

ExcelVBA, コマンドの操作, フォルダの操作

サブフォルダを含めたフォルダ名の一覧出力をする、サンプルマクロ(非推奨)です。 WScript.Shell をわざわざ使うのは実用的ではありませんし、Norton先生はマルウェアと判断してスクリプトを実行させてくれません(^-^; なので、WScript.Shell を使わない一般的な方法の、こちら ...

ExcelVBA, シートの操作

基本編 先頭にコピーした後、シートの名前を変更 ※名前の変更が不要であれば、5行目は削除 末尾にコピーした後、シートの名前を変更 ※名前の変更が不要であれば、5行目は削除 別ブックの先頭にコピーした後、シートの名前を変更 ※名前の変更が不要であれば、9行目は削除 別ブックの末尾にコピーした後、シート ...

MT4

ダウの月足チャートは、今月から三尊天井の形状で下降局面を再度意識させています。 三尊だから必ず下落するとは限らないんですけどね。それでも、以前より押し上げる強さは全然感じ取れません。 米中貿易摩擦が注目されている中で、今朝は「6月10日以降メキシコからの輸入品すべてに5%の関税を課す」というニュース ...

ExcelVBA, ピボットテーブルの操作

ピボットテーブルのフィルタ解除(クリア) ※ワークシート内にピボットテーブルが存在しない状態で、上記のマクロを実行するとエラーになります。 ブック内にある全ピボットテーブルのフィルタ解除(クリア)

ExcelVBA, 文字列の操作

下記のような文字列の末尾にある \ 記号を除去したい、または、なければ付与したい、そんな要望に応える方法です。 文字列操作のお題 Z:\2019年度\学期末テスト\問題集\3年生\英語\ 末尾に \記号があれば除去する。 ※下のソースコード内で \ 記号は \ で表示上されていますが、そのままコピペ ...

ExcelVBA, オートフィルタ

テスト対象のテーブル テスト対象テーブルを使いたい場合は、↓テーブルをコピーしてエクセルの A1 に貼り付けてください。 クリップボードにコピー 商品名出荷日出荷時間検品日時個数 りんご2019/5/288:41:002019/5/28 7:21:004 みかん2019/5/299:03:00201 ...

ExcelVBA, オートフィルタ

テスト対象のテーブル テスト対象テーブルを使いたい場合は、↓テーブルをコピーしてエクセルの A1 に貼り付けてください。 クリップボードにコピー 商品名個数 りんご4 みかん3 めろん5 いちご2 みかん1 オートフィルタ設定がされているこを判定する オートフィルタ設定がある状態で判定 4行目のオー ...

ExcelVBA, オートフィルタ

テスト対象のテーブル テスト対象テーブルを使いたい場合は、↓テーブルをコピーしてエクセルの A1 に貼り付けてください。 クリップボードにコピー 商品名個数 りんご4 みかん3 めろん5 いちご2 みかん1 オートフィルタで絞られているかを判定する 絞られている状態で判定(パターン1) 絞られている ...

ExcelVBA, セルの操作

テスト対象のテーブル テスト対象テーブルを使いたい場合は、↓テーブルをコピーしてエクセルの A1 に貼り付けてください。 クリップボードにコピー 商品名個数 りんご4 みかん3 めろん5 いちご2 みかん1 B列の数値を書式変更で5桁表示にする例 結果 実行前のテーブル

ExcelVBA, オートフィルタ

テスト対象のテーブル テスト対象テーブルを使いたい場合は、↓テーブルをコピーしてエクセルの A1 に貼り付けてください。 クリップボードにコピー 商品名個数 りんご4 みかん3 めろん5 いちご2 みかん1 抽出したデータを他シートへコピー ※xlPasteAll は列幅を含まないため、xlPast ...

Excel 関数

番号→アルファベット A1セルに、以下の数式を記述してください。 =SUBSTITUTE(ADDRESS(1,E3,4),1,"") ※E3セルに列番号を入力してください。A1セルにアルファベットが表示されます。 アルファベット→番号A1セルに、以下の数式を記述してください。 =CELL("col" ...

ExcelVBA, ブックの操作

基本編 ブックの開閉確認 応用編 ファイル存在確認とブック開閉確認を続けてする VWorkbooks.Open メソッドでファイルを開く前に、そのファイルが実在することや、ブックが閉じていることを等を事前に確認したいときのサンプルコードです。 ※5行目のファイルパス名を書き換えてください。 ※48行 ...

ExcelVBA, ファイルの操作

ファイルの存在確認 CreateObject関数で確認 10行目の FileExists メソッドは、複数のファイルを指定するための "*" (アスタリスク) および "?" (疑問符) のワイルドカード文字は使用できません。 Dir関数で確認 7行目の DIR関数 は、Windowsの場合、複数の ...