chevron_left

メインカテゴリーを選択しなおす

cancel
えくせるちゅんちゅん https://www.excel-chunchun.com/

家でも会社でも睡眠中でも、いつもExcelとVBAのことばかりを考えている私がExcelVBAを使って日常や業務を効率化するためのテクニックを書き綴っていくブログです。

KotorinChunChun
フォロー
住所
未設定
出身
未設定
ブログ村参加

2019/02/23

arrow_drop_down
  • VBAの実行時エラー「無効な前方参照か、コンパイルされていない種類への参照です。」の原因と研究記録

    2023年12月から2024年1月にかけて、Excel VBAで実行時エラー「オートメーションエラーです。無効な前方参照か、コンパイルされていない種類への参照です。」が多発しているようです。 更に関係あるか不明ですがVBAプロジェクトが完全に読めなくなるという事象も起きているようです。※末尾関連ツイート参照 以前Twitterに書いた内容ですが、最近閲覧数が急激に増えているためブログにもまとめておきます。 -------------------- 実行時エラー '-2147319767 (80028029)': オートメーション エラーです。 無効な前方参照か、コンパイルされていない種類への参…

  • Microsoft365 ExcelとFormsが同期するアンケートフォームを作成する方法

    本記事では、Microsoft365 Formsのアンケートフォームの回答結果を、OneDriveに保存したExcelブックへ自動的にテーブル形式で蓄積させる方法を説明します。 こちらは「Formsで収集したアンケートの結果をデスクトップExcelで読み込む方法」シリーズの2本目の解説記事です。 www.excel-chunchun.com 目的 作成したいフォームと、取得したいエクセルデータのフォーマットは、前回と同じものです。 www.excel-chunchun.com 前回との違いは「回答結果が同一のExcelファイルに同期するかどうか」です。 それに合わせて【Excelで開く】を押し…

  • Microsoft365 Formsでアンケートフォームを作成する方法

    本記事では、Microsoft365 の Formsでアンケートフォームを作成して、配布し、回答をExcelで開くまでの最低限の方法を説明します。 こちらは「Formsで収集したアンケートの結果をデスクトップExcelで読み込む方法」シリーズの1本目の解説記事です。 www.excel-chunchun.com 目的 アンケートフォームサンプル 今回作成するフォームは、社員が毎日の体温を書いて送信するという、実用性があるのか分からない感じの超単純なフォームです。 回答エクセルデータサンプル 対象 本記事は、企業版のMicrosoft 365 を想定して説明しています。 (Basic プランでも…

  • Formsで収集したアンケートの結果をデスクトップExcelで読み込む方法(目次)

    Microsoft365の機能の一つであるFormsのアンケートフォームを使って情報を収集し、その結果をデスクトップアプリのExcelへ読み込むことで、データをVBA等で使いやすい状態にする方法を、先日Zoomで説明させて頂きました。 資料を準備せずに開催したので、本日より手順を文章化していきます。 Formsを使う意味 クラウドサービスが無い頃は、ExcelやWordでアンケートフォームを作成し、メールで社員に拡散してメールで受け取ったファイルをVBAで集計するという作業が数多く見られました。(VBAで集計しているだけマシかもしれませんが) 昨今はクラウドサービス上でアンケートフォームを作成…

  • VBAのApplication.WaitとSleepの違い

    よく Excel VBA の Application.Wait と WindowsAPIの Sleep は何が違うんですか?という質問をされることがあります。これは、疑問に思うのは無理もありません。結果だけ見れば「待つ」という同じ機能に見えます。 しかし、両者は全く異なったアプローチによって「待つ」実現しており、それぞれに適した使い方があります。 この記事では、筆者の個人的な経験と推測に基づいて、両者の違いを比較・解説していきます。 一般的な使用例 解説へ入る前に、一般的なWaitとSleepの書き方を紹介しておきます。 ※コード中の Rem はコメントです。 Application.Wait…

  • VBAでパブリックなコンパイラ定数を定義して条件付きコンパイル制御を行う

    VBAには、環境に応じてソースコードの使用する箇所を変える「条件付きコンパイル」という仕組みがある。 この記事では、独自のコンパイラ定数を定義し全てのモジュールのコンパイルを一括で制御する方法を解説する。 よく見かけるWindowsAPIのコンパイル制御 コンパイラ定数とは ディレクティブとは #ConstにPublicを書けない問題 パブリックなコンパイラ定数の作り方 余談: If VBA7 Then は省略表記かもしれない 複数のコンパイラ定数の書き方 条件付きコンパイル引数の限界 まとめ:コンパイラ定数の種類 おまけ:条件付きコンパイル引数の活用事例 最後に よく見かけるWindowsA…

  • なぜ個人用マクロブック(PERSONAL.XLSB)を使うのか

    ExcelにはVBAで記述されたマクロを任意のブックで再利用するための常駐型のブックが存在し、これを「個人用マクロブック」あるいは「PERSONAL.XLSB」と呼ばれる。 この記事では、私がなぜ個人用マクロブックを使っているのか。どんなことに気をつけて使っているのか説明する。 個人用マクロブックとは 個人用マクロブックを使ってみる なぜ個人用マクロブックを使うのか マクロがすぐに使える態勢になっているから 普通のブックにはマクロが記載できないから マクロを保存せずに閉じてしまうことがあるから 個人用マクロブック活用のコツ ブックやシートはアクティブなものを使うが、必ず変数に格納してから使用し…

  • なぜExcelでテーブルを使うのか

    普段、私はテーブルを好んで使用しています。テーブルを使う理由、テーブルを使わない理由について、個人的に思いつく限りのことをダラダラと書いてみました。 個人的な解釈に基づいた表現をしており、見方によっては評価が逆転することもある点にご注意ください。 テーブル化するメリット 良い感じに交互着色とオートフィルタが設定される(好みによる) ウィンドウ枠の固定が不要(好みによる) スライサーが設定できる 範囲選択が簡単になる(Ctrl+Space / Shift+Space / Ctrl+Shift+Space / Ctrl+A) セル結合が絶対に使われていない表にできる 列の数式が自動入力される デー…

  • 2021年版 今年買って良かったもの

    お久しぶりです。最近ブログ書いていなかったのでリハビリがてら、今年買って良かったものをまとめてみました。 よかったら参考にしてください。 Anker PowerCore III 10000 Wireless (ワイヤレス充電機能搭載 10000mAh 大容量 モバイルバッテリー) 【ワイヤレス出力 10W / USB-Cポート出力 18W / PD対応 / Qi認証 / PSE技術基準適合】 ¥6,000 Apple MagSafe充電ケーブル Anker Soundcore Liberty Neo 2(ワイヤレス イヤホン Bluetooth 5.2)【完全ワイヤレスイヤホン/ワイヤレス充電…

  • ExcelVBAでワークシートからユーザー定義関数が使える条件と隠す方法

    ExcelVBAでは、Excelワークシートの数式からVBAに記載したFunctionプロシージャによって宣言された関数を既存の関数(SUM等)と同じように使用することが出来ます。 しかし、表示されているのにエラーとなったり、表示されていないのに使えてしまったりという、よくわからない挙動をします。 今回は、この辺りの解説をしていきます。 重要事項 入力候補に関数名が出ないからと言って使えないわけではない ワークシート上でも モジュール名.関数名 と書くことができ、モジュール名が省略された場合はVBAが自動的に選択している。 関数名が重複するとモジュール名から記載が必要になる クラスモジュールに…

  • ExcelVBAはどのようにプロシージャを分割すると良いのか(前編)

    概要 私がVBAでプログラミングをするときは、プロシージャを3つの階層に分けて作るように意識している。 今回は私のプロシージャ分割の考え方を紹介する。 本記事では自分が説明しやすいようにプロシージャを次の2種類に分けて表記する。 マクロ・・・ユーザーの行動によって起動するプロシージャおよび機能のこと。基本的には引数を持たない Subプロシージャ のみが該当する。 関数・・・・ Functionプロシージャ の他、他のVBAコードから呼ばれる一定以上の抽象度を持つサブルーチンSubも含める。 例 これから説明しようとしていることを満たしている最低限の開発例 分割単位 私が提唱するプロシージャの分…

  • パソコンとスマホの音声をBluetoothイヤホンで同時に聞く方法

    近年、Bluetoothイヤホンがかなり普及してきました。 以前は3.5mmイヤホンジャックがないスマホはダメだと言われたものですが、最近ではめっきり聞かなくなりましたね。 さて、そんな便利なBluetoothですが、どうしても解決したいと考えている課題がありました。 それが、タイトルの「パソコンとスマホの音声を同時に1つのBluetoothイヤホンで聞く方法」です。 「同時に接続」ではなく「同時に聞く」というのがポイントです。つまり2つの音声をミックスしてくれないといけません。 そして、私の知る限りにおいて、同時に聞くことが出来るイヤホン/ヘッドホンは全くありません。 この記事は、そんな環境…

  • VBAでリストボックスを上下するボタンを作成する方法

    VBAのユーザーフォームに配置されたリストボックスのアイテムをボタンクリックで上下できるフォームを作成したので紹介する。 作ったもの リストボックスのアイテムは複数選択・2列表示できるようにする 【追加】を押したらテキストボックスの文字列をリストボックスにアイテムを追加する。ただし、もしスペースで区切られている場合は2列に分割する 【削除】を押したら選択しているアイテムを削除する 複数のアイテムを【上ボタン】【下ボタン】によって上下移動できるようにする 【スピンボタン(アップダウンボタンとも言う)】を使うことで、クリック連打や長押しによる上下移動もできるようにする ソースコード全文 まとめ

  • VBAのユーザーフォームで十字キーを押すとチェックボックスやトグルボタンがONになる問題の解決策

    今日はVBAの長年の疑問であった、十字キーを押すとチェックボックスやトグルボタンが押し下げ状態になる問題の解決策を発見したので記録に残す。 問題の再現方法 解決策 何故これが解決策になるのか 1.なぜテキストボックスの入力制限はKeyDownなのにチェックボックスのチェックの阻止はKeyUpなのか 2. なぜ値渡しなのに呼び出し元に影響を与えることができるのか 3. なぜ修飾キーは押すことができないのか 参考資料 まとめ

  • VBAでFunctionとProperty Getを使い分ける理由

    VBAの Function と Property Get は非常に似ています。 検索して出てくる説明では、両者を何故使い分けているのか、今ひとつシックリこない人が多いと思います。 そこで、私がなぜプロパティを使い分けているのか説明します。 プロパティとは Property Get と Function で何が違うの? 1. アイコンが違う 2. ローカルウィンドウに表示される 3. Callできない 4. 値の設定にも同じプロシージャ名が使える プロパティの注意 1. ブレークの度にプロパティが走る 2. 別にクラスを使わなくても良い 3. プロパティにも引数を持たせられる まとめ

  • ブラウザにsheet.newやexcel.newと入力して素早く表計算を始めよう

    ブラウザのURLに sheet.new と入力したらGoogle Spreadsheetを。excel.new と入力したらMicrosoft Excelの新規作成画面を開けることはご存知だろうか? 実は サービス名.new で、いきなり新規作成を開けるWEBアプリが多数存在する。 2020年 からGoogle が .new ドメインを誰でも取得できるようにしており、我々の知らぬ間に続々と対応サービスが増えているらしい。 現在使用可能なドメインは、.new - Google Registry で閲覧できる。 よく使うアプリが対応していないか、チェックしておくと良いかもしれない。 活用方法 もっ…

  • 印刷物第一主義の会社で社内Wikiを立ち上げた話

    私がWordやExcelによるマニュアル執筆と印刷物の配布に痺れを切らして、社内向けのWikiサイトを立ち上げたときの話をします。 概要 まず、何がどうなったのか説明すると... 前提 以前はこんな状態・環境でした。 マニュアルはメールにPDF形式で添付されて飛び交い 情報を共有できるポータルサイトが存在せず 過去のマニュアルは行方不明 たまにファイルサーバーに保管されているが、古すぎてやくたたず 更新しようにもPDFなので作り直し 結果 (私が執筆に関わるマニュアルに限った話ですが)こうなりました。 マニュアルはWikiにて執筆 出来るだけURLで共有 WEBアクセス不能な人には、ページをP…

  • iPhone12を買ったらiPhone7が壊れたんだが?

    先日、私はiPhone12 Proを購入した。 www.excel-chunchun.com 既存のiPhone7は手元に置いておき、今後も予備機として役に立ってもらうつもりだった。 ところがiPhone12を買った途端にiPhone7が壊れてしまい文鎮と化した。 いったい何が起きたのか、どうしたら良かったのか、後世のために書き残しておきたいと思う。 注意 ※12を購入すると7の故障に繋がるわけではありません。安心して12をお買い求め下さい。 今北産業 iPhone12を買ってから数日後に、iPhone7のホームボタンが故障 操作をミスってとどめを刺してしまう 偉大なるSiriの力で命を吹き替…

  • iPhone7からiPhone12Proへ移行した話

    iPhone7を発売と同時に買って早くも4年。 iPhone12が登場したので、色々な事情もあってiPhone12Proを購入した。 この記事は、私が購入に至るまでを綴った覚え書きである。 もし同じような人の参考になれば幸いです。

  • APCのUPS(無停電電源装置) SMT500J を買ってみた

    無停電電源装置を新調したので覚書も兼ねて紹介しておく。 買ったもの なんのためにUPSを買ったのか 身の回りの家電の消費電力 検証結果 UPSは延命装置であって、バッテリーではないですよ 参考資料 オムロン 無停電電源装置(常時商用給電/正弦波出力) 500VA/300W BY50S オムロン 無停電電源装置(常時商用給電/正弦波出力) 550VA/340W BW55T APC Smart-UPS 500 LCD 100V SMT500J E サンワサプライ ワットチェッカーplus 10種類測定可能 検電器 TAP-TST7 サンワサプライ ワットモニター TAP-TST8N さいごに 買っ…

  • WinAPIの64bit化で出てくるPtrSafe、LongLong、LongPtrってなんなのさ?

    WinAPIを64bitに対応しようとした時に絶対に覚えなくてはならないのがLongPtrである。 Declare文の64bit対応に関しては以前記事を書いたが、LongPtrの置き換えに関しては一切関与していない。それは自動判定が極めて難しいからなのだが、今回は64bit対応が必要となった経緯について私が想像したことを説明しようと思う。 www.excel-chunchun.com

  • VBAのクラスでNewと同時に引数付きコンストラクタを起動する代替案

    VBAのクラスをNewと同時に引数付きコンストラクタを起動する方法を、思いつく限りの方法をまとめておく。

  • 次元数がわからない配列変数の処理をシンプルにするVBA関数

    今回は次元数の分からない配列に対して共通の処理系で全て処理できるようにするVBA関数を作ったので紹介する。

  • VBAのクラスの作り方1 - 進化するRECT

    この記事は、ユーザー定義型のRECTが俺俺Rectangleクラスに進化していくまでの一連の流れを解説したものである。 メモリっぽいイメージ描いて頑張って説明しているが、「自身がなんとなく納得」するために描いたもので、正確なイメージではないので注意されたし。

  • ExcelVBAで確実にWorksheet.AutoFilterを取得する関数

    今回はExcel VBAでAutoFilterオブジェクトを取得する方法について調査した結果を報告します。

  • VBAで多重ループから脱出する方法の全て

    昨日、id:Infoment さんの「多重ループからの脱出」を読んで、たまに使っているテクニックを思い出したので、紹介するついでに思いつく限りの方法を整理してみた。 infoment.hatenablog.com はじめに 一般的によく見かける多重ループからの(純粋な)脱出方法は、次の2つだと思う。 1.ラベルとGoTo文を使って抜け出す 2.脱出フラグを立てて段階的に抜け出す だが、VB系の言語には特有の文法によって、第三の脱出方法が存在する。 3.本命の処理とは異なる繰り返しステートメントで囲って抜け出す(Exit Do) (個人的におすすめできないが)次のような方法もある。 4.エラーを…

  • 書評 パーフェクト Excel VBAを読んで

    半年以上前に入手したタカハシさん著の「パーフェクト Excel VBA」ですが、ようやく読み終わりましたので読書感想文を書かせていただきます。 パーフェクトExcel VBA (PERFECT SERIES)作者:高橋 宣成発売日: 2019/11/25メディア: 単行本(ソフトカバー)

  • ExcelVBAでBeforeSaveでApplication.DisplayAlertsが働かない

    今回はTwitterで見かけたWorkbook_BeforeSaveの中でApplication.DisplayAlerts = Falseを実行しても、保存時の確認ダイアログが消えないというVBAの質問にお答えします。

  • ExcelVBAでオートフィルタで絞り込んだデータの行数をカウントする

    ExcelVBAでオートフィルタで絞り込んだ結果、表示されているデータの行数をカウントする方法について説明する。 要望 最適解 回答例 各行の表示状態を確認して非表示のものを数える オートフィルタの設定されたセル範囲のうち、可視セルだけ絞り込んでから行数を数える Areas毎の行数を合計する SUBTOTAL関数の個数カウント機能を使う方法 1列に絞って可視セルの個数を数える 注意事項 Worksheeet.AutoFilterプロパティ使用の注意事項 SpecialCellsの副作用 参考資料 まとめ 要望 最適解 アクティブなシートのフィルタ件数を知りたい場合は、下記のワンライナーを実行す…

  • 快適なExcelライフを送るために必要な環境構築(開発者編)

    前回から続きまして、筆者ことりちゅんが、快適にExcelライフを送るのに欠かせない環境構築の全貌をお見せします。 今回は開発者向けの設定を紹介していきます。従ってVBEの設定もします。 前編はこちら 概要 開発タブを表示する 左下にマクロの記録を表示する Excelのオプション-すべてのマクロを有効化・VBAプロジェクト オブジェクトモデルへのアクセスを信頼する Excelのオプション-保護ビューの解除 VBEのオプションの変更 VBEのカスタマイズ-色設定 VBEのカスタマイズ-ツールバー エクスプローラーの新規作成 共有フォルダのサーバーを信頼済みインターネットゾーンに登録しておく 超マイ…

  • サーバーから全てのデータを消しちゃったので反省します

    社内のファイルサーバーの全てのデータを消し飛ばしてしまうという、人生史上最大のミスを犯してしまいました。二度とこのような失敗をすることがないよう強く反省し、記録を書き残すことにする。

  • 快適なExcelライフを送るために必要な環境構築(ライトユーザー編)

    今回は筆者ことりちゅんが、快適にExcelライフを送るのに欠かせない環境構築の全貌をお見せします。 概要 オートコンプリートを無効化する エクスプローラーのプレビューを消す IMEの設定でShift+Spaceの半角入力を消す Google日本語入力の場合 IME日本語入力の場合 ATOKの場合 「Dropboxバッジ」を「今後表示しない」 OneDriveの「Officeアプリケーションを使用して、開いているOfficeファイルを同期する」をOFFにする Excelの描画リボンを非表示にする Excelのホームに使うものを集中させる クイックアクセスツールバーに重要な物を追加する Alt+1…

  • チャットのEnterキーの挙動を徹底調査してみた。~改行キーと送信キーは統一すべきである~

    チャットで改行しようと思ったのに送信されてしまった!!! そんな経験ありませんか? SNS・チャットソフトによって送信キーと改行キーがバラバラすぎる問題です。 新型コロナの影響で、リモートワークが増えたことによりチャットソフト・ビデオ通話ソフトのユーザーは急激に増加したはず。 ソフトのキーがバラバラではイライラが止まりません! というわけで、私、本気で調べてみました。 調査結果はこちらです!!!(※未完成) Teams、Facebook Messenger、Skype for Businessは私には検証できなかったので諦めました。※情報、お待ちしています。 特に許せないのはTwitter。同…

  • VBAクイズ プログラムの誤りを指摘せよ!

    日、Twitterにて #VBAクイズ を出題しました。このクイズの問題点について解説していきます。

  • ExcelVBAでお賃金コストチェックアドインを作ってみた

    朝起きたらTwitterで会議をするときは、参加者の時給から会議コストを算出しなさいという話が出ていたので、私もリアルタイムにコストを表示するツールを作ってみました。

  • 文字列中の濁音を清音に変換するVBA汎用関数を作ってみた

    GW1日目。今日は自作の文字列処理ライブラリに入っていた濁音を清音に変換する関数が、あまりにイケてないので書き直してみました。 作ったもの 修正前のソースコード 書き下ろしたソースコード まとめ 作ったもの 以下のように文字列を変換する関数を作成した。 変換前 変換後 1 こんにちは こんにちは 2 ことりちゅんです。 ことりちゅんてす。 3 VBAで遊ぼう VBAて遊ほう 4 この前新しいルータを買いました。 この前新しいルータを買いました。 5 RTX830です。 RTX830てす。 6 この関数ならハンカクカタカナもバッチリです。 この関数ならハンカクカタカナもハッチリてす。 総当りで…

  • ExcelにGoogle Spreadsheetを読み込むVBA汎用関数を作ってみた

    今日はGoogle Spreadsheet(グーグルスプレッドシート:通称スプシ)に記載された表を、Excelに取り込むためのVBAを書いてみた。 きっかけ 作ったもの ソースコード 解説とか IsPlane=True(加工なしの場合どうなるか) 問題とか まとめ きっかけ 最近になって、ようやくGoogle製品を本格的に使い始めたちゅんちゅん。 Googleフォーム → Google Spreadsheet → Google カレンダー等 という王道パターンでクラウドアプリを開発中の最中のことだ。 収集したデータをExcelに取り込みたくなってきた。 込み入った処理は慣れたVBAで処理したい…

  • Logicoolの最強マウス MX Master3を手に入れた

    ついにLogicoolの MX Master3を手に入れたのでレビューする。 とは言えここはExcelブログ。Excelを快適に使うための設定も紹介する。

  • VBAでよく使うCreateObjectや参照設定を整理してみた

    VBAで使ったことのあるCreateObjectや参照設定を整理してみました。

  • VBAで快適にレジストリ操作ができるクラスを作ってみた

    今回はVBAのレジストリ操作を快適にするクラスを作ってみたので紹介します。

  • Excelの入力規則のリスト選択を簡単にするアドインを作ってみた

    今日はExcelの入力規則のリスト選択の使いづらさを改善するアドインを作ってみたので紹介します。

  • マルチディスプレイの貴方、ウィンドウマネージャ使ってますか?

    読者の皆さん!パソコンのディスプレイはマルチディスプレイにしましたか? そこの4Kディスプレイの貴方!トリプルディスプレイの貴方!アプリのウィンドウの配置どうしてますか? ウィンドウマネージャは使ってますか?

  • ExcelVBAのHyperlink.Addで表示文字が変わらない

    日はHyperlink.Addで表示文字が思ったように表示されなくてハマったので、使い方を記録として残しておく。

  • Excel VBAにおける伝家の宝刀。Evaluateの使い方

    今回はExcel VBAにおける伝家の宝刀。Application.Evaluateメソッドを紹介します。

  • VBAの参照設定は個人用マクロを使うと快適になるよ

    VBAを使っていると「参照設定」をしなければならない場面が多々あります。 ネット上で拾ってきたコードをコピーして使ったら、それが参照設定が必要なコードで必要なライブラリを調べて、設定画面でライブラリを探し出してチェックを入れるのが億劫になっていませんか? それを手軽に解消する方法の一つとして、私が実施している「個人用マクロ」を活用するという小ネタを紹介します。

  • データベースアプリのAirtableが最高に使いやすかった話

    最近、Airtableというクラウド型のデータベースを使って仕事が超快適になったので紹介する。

  • 特定スレスレのラインを目指して私の経歴を晒す

    ※ある程度事実に基づいていますが、Fakeが多数含まれていますのでご注意ください。 ことりちゅんについて 本州の真ん中辺りの官公庁からお仕事を頂いている中堅企業に勤務中のサラリーマン どこにでもいるイチ技術者として業務消化に当たりつつも、情報システム全般の開発・運用・保守の全てを行う 諸事情により現在は神々から隠れてコソコソとIT管理を行っている VBAを始めるまでのお話(学生時代) (今回の記事とは無関係です。飛ばしても大丈夫) www.excel-chunchun.com 1年目 高校新卒で専門技術もなく、コミュ力の低い私は誰からも期待されず、単純な仕事しかもらえない。暇な時はVBAで手当…

  • 特定のエクセルウィンドウだけを並べて表示する関数を作ってみた

    先日、特定のエクセルウィンドウだけを並べて表示するVBA関数を作ったので紹介する。

  • ExcelVBAのCurrentRegionにはバグがある

    先日、Excel VBA のCurrentRegionにはバグがあるらしい情報を耳にしました。 実際に私の手元の全ての環境で再現できたため、勝手にバグとして認定し公表します。

  • Excelの作業グループ禁止アドインを作ってみた

    ~快適なExcel生活のためには手段を選んでいられません~ のアドイン第二弾! 今日はExcelの【作業グループ】を禁止するアドインを作ってみました。 これを導入すれば、あなたの身を【作業グループ】から完全に護ります! _人人人人人人人人人人人人人_>作業グループ禁止アドイン< ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄が完成しました。・作業グループになってるの気が付かずに編集して、別シートのデータがこわれちゃった・印刷のために作業グループにして、そのまま保存して次に開いた人に叱られちゃったから護ります。 pic.twitter.com/T2JpYCSEfL— ことりちゅん@えくせるちゅ…

  • セル結合禁止アドインを作ってみた

    ~快適なExcel生活のためには手段を選んでいられません~ 今日はExcelのセル結合を禁止するアドインを作ってみました。 これを導入すれば、あらゆるブックからセル結合を完全に駆逐できます! もう二度とセル結合に苦しめられることはありません! さぁ皆も一緒に 結・合・禁・止 \(^o^)/ _人人人人人人人人人人人人_> セル結合禁止アドイン < が完成しました ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄~快適なExcel生活のためには手段を選んでいられません~なんと、セルの結合を解除するための支援ツールを内蔵!もう二度とセル結合に苦しめられることはありません! pic.twitter.co…

  • VBA開発環境(VBE)にオリジナルの機能を追加する

    VBA開発を行うに当たって、特に厄介な課題の一つとして挙げられるのが「開発環境であるVBEがショボすぎる」という事である。 VBEをカスタマイズする方法は色々あるが、ここでは「開発環境(VBE)にコマンドを追加して自作のVBAプログラムを実行する」方法を紹介する。

  • 神Excelの罫線作図支援ツールを開発する part1

    今回は紙エクセル対策で必要な罫線作図ツール開発の序章です。 本記事はExcel Advent Calendar 2019 の1日目(12/1)の投稿です。(みんな参加してね!)

  • SpecialFoldersの引数にString型変数を指定すると意図した通りに動かない

    思わぬ挙動でびっくりしたので書き残しておく 詳しい本文はまた今度追記する。 何らかの演算をすることで、Variantに暗黙的に変換されるんだろうな。 'SpecialFoldersの引数にString型変数を指定すると誤動作する。 Sub Test_SpecialFolders() With CreateObject("Wscript.Shell") Debug.Print .SpecialFolders("AllUsersDesktop") 'C:\Users\Public\Desktop Debug.Print .SpecialFolders("Desktop") 'C:\Users\[ユ…

  • ワークシート用ユーザー定義関数は使い方を誤ると危険である

    VBAで作るユーザー定義関数の第三弾。 ここまでユーザー定義関数を推しておいて今更だが、私は多用するのはオススメしていない。 今回はユーザー定義関数の何が危険なのかを説明する。

  • 普通のキーボードとゲーミングキーボードと高級キーボードの違い

    こんばんわ。ことりちゅんです。 本日はかの有名メーカーの高級キーボード REALFORCE R2 PFU Limited Edition をついに手に入れたので紹介してみます。 東プレ REALFORCE R2 テンキーレス「PFU Limited Edition」日本語配列 (ブラック) PZ-R2TLSA-JP4-BK出版社/メーカー: 東プレメディア: エレクトロニクスこの商品を含むブログを見る はじめに 読者の皆さんにはこれだ!という愛用のキーボードはありますか? 私にはあります。 Logicool G ゲーミングキーボード テンキーレス G-PKB-001 ブラック メカニカルキーボ…

  • VBAのコメントの書き方の試行錯誤

    当然のことではあるがプログラミングに於いて、コメントを残すことは非常に重要である。 私が個人開発をする中で「コメントを残しておいて良かった。」と思った事を、独り言として書き残しておく。 コメントを残して良かったと思う時 なぜこのようにプログラミングしたか 真っ先に挙げるとしたらコレ。 プログラムを読んで理解しようとした時、複数の実装方法がある中でわざわざ回りくどい方法を採用している時、後で読み返すと「なぜこうしたのか分からない」と言った疑問を持つ事が多い。 そんな時「何故?」を書いておくと救われる。 私が全力でプログラミングしている時、脳ではとてつもない情報量が光の速さで処理されている。 とて…

  • VBAでの広域コメントアウトの代替案

    VBAにはCのような開始位置と終了位置を明示して広範囲をコメントアウトを行う記法が存在しない。 それでも広範囲コメントアウトを行いたい人のために、私はディレクティブの活用を提案したい。 VBAのコメントアウトについて まずはVBAで使える二種類のコメントを紹介。 VBAにはシングルクォーテーション(アポストロフィと呼ぶべきか?)を使ったコメントアウトと 'コメント docs.microsoft.com - Rem ステートメントを使ったコメントアウトがある。 Rem コメント 複数行コメントアウトは「コメントブロック」機能で出来る。 単に「複数行をまとめてコメントアウトしたい」というだけであれ…

  • VBAで戻り値のある複数シートをコピーする関数を作ってみた

    今回はVBAで戻り値のある複数シートをコピーする関数を作ってみたので紹介します。

  • Outlookでメール受信者がローカルパスをクリックできるようにUNCパス化するマクロを作ってみた

    Twitterにてアイディアを頂いて、昨日とは別の方法でOutlookのメール受信者がリンクをクリックできるようにするマクロを作ってみた。

  • Outlookメールで受信者がローカルパスをクリックできるようにするマクロを作ってみた

    本ブログ初のOutlook用マクロのご紹介。 Outlookでメール受信者がローカルファイルのパスをクリックできるようにするマクロを作ってみた。

  • VBAでWin32APIの64bit対応自動変換プログラムを作ってみた

    愛用マクロを64bit版Excelに早急に対応させる必要が出てきたので、ソースコード上のWin32APIのDeclare文を64bit対応に自動変換プログラムを作ってみたので紹介する。 なお、Declare文だけの変更では完全に64bit対応とはならないので、実際に使う人はちゃんと勉強してから使うようにしましょう。

  • ワークシート用ユーザー定義関数を揮発性にする方法

    今回はVBAで作るユーザー定義関数の第二弾。揮発性関数についてお話します。

  • VBAによる安定したワークシート関数の作り方

    今回はVBAで安定したワークシート関数を作る方法についてお話します。

  • VBA関数のライブラリ名やモジュール名の省略を検知するアイディア

    こんばんわ。最近自作のVBAモジュールのライブラリ化を夢見てアレコレしていることりちゅんです。 ライブラリ化を進めるに当たって、今まで適当に省略して済ませてきたモジュール名の明示が重要な課題となってきました。 そんな中、良い感じのアイディアが浮かんだので紹介しておきます。 https://twitter.com/KotorinChunChun/status/1179014552639270912?s=20

  • EnumWindowsを使って別プロセスのExcelを取得してみた

    今日はVBAでWinAPIのEnumWindowsを使って別プロセスのExcelを取得する関数を作ってみました。

  • エクセルマクロで野生のマグロを駆逐するミニゲームを作ってみた

    下記の記事に触発されて、野生のマグロを養殖して駆逐するミニゲームを作ってみた。 前置き まずは下記の記事をご覧いただきたい。 https://weekly.ascii.jp/elem/000/000/434/434408/ 「天然マクロ」と呼ばれる社内スタッフ独自のマクロだけでなく、システム部で作った「養殖マクロ」もあるが、養殖マクロが現場で運用・改修されるうちに「野生化」して手が付けられなくなるトラブルもあった。 私はこの文章で腹筋が崩壊した。 マグロ🐟じゃないよ!マクロだよ! はい、ご所望のマクロを駆逐するゲームでございます。 youtu.be いやいや、これマクロじゃないよ!マグロ🐟だよ…

  • えくせるちゅんちゅん式はてなブログの書き方

    今回は私がMarkdownではてなブログを執筆するときの方法を紹介する。

  • VBAでIIF関数が全ての項を評価してしまうのは当然である

    今日はVBAのIIF関数について。むしゃくしゃして書いた。後悔はしていない。

  • VBAの裏技?コロンで好きな位置にブレークポイントを設置する

    今回はVBAで好きな位置にブレークポイントを設置して、ストレス無く開発を進めるためのテクニックを紹介します。

  • VBAのStopとDebug.Assertステートメントの違い

    今回はVBAのStopとDebug.Assertステートメントの違いについてお話します。

  • VBAのInStr関数の不思議な挙動について調べてみた

    先日Twitterで教えて頂いたInStr関数の名前付き引数の不思議な挙動について情報を整理してみた。

  • VBAで文字列中の文字をカウントする関数を作ってみた

    今回はVBAで最速で文字列に含まれる文字列の出現回数をカウントする関数を求めて色々と調査してみました。

  • VBAで環境に依存しないWindowsMediaPlayerの使い方

    先日、フォロワーのA氏がWindowsMediaPlayerを使ったVBAで、環境依存のバグに悩んでいたので解決した話をする。

  • VBEでオブジェクトのどのイベントを使えば良いのか簡単に調べる方法

    今回はVBEでWorksheetの全てのイベントを検知してDebug.Printするためのコードを素早く作成する方法を動画でお送りします。

  • XYから矩形を特定するユーザー定義関数を作ってみた

    今回はちょっとしたユーザー定義関数を作ったので紹介します。

  • Excelでひらがなとカタカナを変換する数式を作ってみた

    ネットで情報収集していたら、ふと「ひらがなをカタカナに変換したい。」という文字が見えた。 最近、文字列処理の関数ばかり見ていた私はCONCATを使えば出来るとピンと来たため、お盆休み最後の全ての予定を放り投げて早速作ってみることにした。

  • Excel関数で文字列処理を行う数式集

    エクセル関数で文字列を自由自在に変換するための数式を大公開します。(随時更新) 載せて欲しい式や、バグ等があればコソッと教えてください。

  • 1から100の偶数の和を求めるワンライナー作成の軌跡

    先日Twitterで話題になった「1から100の偶数の和を求めるワンライナー」に関して、VBA作成までに思考したことを整理しておきます。

  • Excel2019の新機能:TEXTJOIN関数の高度な活用テクニック

    今回はExcel2019で完全対応となった新関数「TEXTJOIN」の高度な活用テクニックを紹介します。 (※半分ネタですので期待しないように)

  • Excelシートのデータ範囲を2次元配列に格納するVBA汎用関数を作ってみた Part3

    今回は以前作成したセル範囲を二次元配列化する関数を改造して、非表示のセルを除外するようにしてみたので紹介します。

  • VBAで最も高速な整数型を調べてみた

    今回はVBAのIntergerとLongとLongLongのうち、どれが最速な型なのかを調べてみました。

  • Excelから游ゴシック体を徹底的に駆逐する Part3

    游ゴシック大嫌いな同志諸君!お久しぶりです。ことりちゅんです。 ついに!ついに、ブックからレイアウトを崩さずに游フォントを完全に消し去る最強のマクロが完成しましたのでご報告申し上げます。 本記事は「Excelから游ゴシック体を徹底的に駆逐する」の第三弾になります。

  • LogicoolマウスでExcelをクールに使おう

    今回はマウスを新調したので、Excelで使うためのカスタマイズについてお話する。

  • QNAPにSSHで接続してユーザーを管理する

    本記事はQNAPにSSHで接続してユーザー管理をするために、私が試行錯誤したときの記録です。 不明なところがたくさんあるので、もしよろしければアドバイスを頂けると幸いです。

  • ExcelVBAのRemoveDuplicatesの使い方を調べてみた

    今回はExcelで「重複の削除」を実行する「RemoveDuplicates」メソッドの使い方を調べてみました。

  • VBAのApplication.Runで変数を参照渡しする方法

    今回はVBAのApplication.Runを使用した場合のByRef参照渡しの方法について説明する。 ただし、本記事で紹介する方法には不明な点があるため、あくまで覚えとして書き残しておく。 不完全な記事で申し訳ないが許してほしい。

  • ExcelVBAで衝突しないファイル名の生成方法について考えてみた

    今回はVBAで重複しないファイル名を作成する方法について考えてみました。

  • Excelの天敵!!!マウスのチャタリングをやっつけろ!!!

    今回はExcelの天敵と言っても過言ではない、マウスのチャタリングについてお話します。

  • Excelシートのデータ範囲を2次元配列に格納するVBA汎用関数を作ってみた 2

    Excelシートのデータ範囲を2次元配列に格納する汎用関数を修正したので紹介します。

  • Excelシートのデータ範囲を2次元配列に格納する汎用関数を作ってみた

    Excelシートのデータ範囲を2次元配列に格納する汎用関数を作ってみたので紹介します。 今回は仕事で修正中だったVBAで中途半端な汎用関数があったため、仕様を大きく変えずに置き換えられる汎用関数が、ど~~~しても欲しくなったので、ちょっと作ってみました。

  • Excelから游ゴシック体を徹底的に駆逐する 2

    以前、游ゴシック体を駆逐する方法を紹介しましたが、あの面倒な設定全てをvbsで自動化することに成功したので紹介します。

  • Excelの中級者と上級者の違いはなんだろう?

    Excelの中級者と上級者の違いはなんだろう? Twitterを見ていて、ふと疑問に思ったので私なりの基準を考えてみた。

  • Excelで高度な数式を構築する方法 part2

    引き続きExcelで高度な数式を組むのに必要な技術のご紹介ということで、第二弾は「文字列sを区切り文字fで分割する数式(SPLIT)の解説を行います。

  • Excelで高度な数式を構築する方法

    今回はExcelで高度な数式を組むのに必要な技術を紹介します。 Excel関数は使えるようになったけど、配列数式が分からない!という方にもオススメです。 はじめに エクセルの基本 注意 計算の順番 配列 配列数式 配列数式ではない配列数式 数式作成に必要な標準機能 数式の入力 数式の検証 数式を計算結果で置き換える 数式の分析 数式を表示 数式作成に便利なテクニック コメントを入れる方法1 (T関数とN関数) コメントを入れる方法2 (配列定数) 数式解読ツール おわりに はじめに 以前、文字列処理の数式を公開しました。 www.excel-chunchun.com 上記記事では、配列数式を使…

  • VBAでセルに含まれる全ての数値をカウントアップするマクロを作成する

    今回はVBAでオートフィルの強化版みたいなのを作ってみましたので紹介します。 尚、本記事では「元に戻すを破壊しないVBAの書き方」も記載しています。

  • 私が4画面でマルチディスプレイ環境を構築するまでの軌跡

    今日はプログラミングをお休みして、マルチディスプレイ環境の構築についてのお話です。 この度、何を血迷ってか、DELLのU2719Dを購入しました。(\50,000) Dell モニター 27インチ 広視野角 フレームレス WQHD IPS非光沢 省スペース ブルーライト軽減 フリッカーフリー DP,HDMI 高さ調整 回転 3年保証 U2719D ブラック出版社/メーカー: Dell Computers発売日: 2019/02/02メディア: Personal Computersこの商品を含むブログを見る そして、以前から私が理想としていた左右対称の4画面環境が整いました。 これを記念して、私…

  • VBAでファイルリストを高速に取得する関数を自作するPart4

    今回は前回の「VBAでファイルリストを高速に取得する関数」に改良を加えて更に高速化すると共に64bit対応に成功しましたのでその軌跡を記します。

  • VBAでファイルリストを高速に取得する関数を自作するPart3

    今回は以前執筆した「VBAでファイルリストを高速に取得する関数を自作する」の続編です。

  • Excelで行の高さを維持したまま並び替えできるようにする方法

    今回はExcelで行の高さを維持したまま並び替えできるようにする方法を紹介します。

arrow_drop_down

ブログリーダー」を活用して、KotorinChunChunさんをフォローしませんか?

ハンドル名
KotorinChunChunさん
ブログタイトル
えくせるちゅんちゅん
フォロー
えくせるちゅんちゅん

にほんブログ村 カテゴリー一覧

商用