2026-01-01から1年間の記事一覧
Excel VBAでよくある処理の1つが**「シートの枚数を数える」**です。 例えばこんな場面で使います。 シート数に応じて処理を変える 全シートをループする前に確認 管理用のチェック処理 この記事では、シート数をカウントする方法をわかりやすく解説します。…
Seleniumでは、入力フォームに文字を入力することができます。 例えば次のような操作です。 ログインフォーム 検索フォーム 問い合わせフォーム この記事では 入力フォームに文字を入力する方法を解説します。 文字を入力する基本 入力には send_keys() を使…
Seleniumでは、Webページに表示されている文字を取得することができます。 例えば次のような処理です。 商品名の取得 記事タイトルの取得 価格の取得 この記事では Seleniumでテキストを取得する方法を解説します。 テキストを取得する基本方法 テキストは .…
Seleniumを使ってWeb操作を自動化するとき、最もよく使う操作が 「ボタンをクリックする」 です。 例えばこんな場面 ログインボタンを押す 検索ボタンを押す ダウンロードボタンを押す この記事では、**Seleniumでボタンをクリックする方法(clickの使い方)…
Seleniumを使い始めたとき、多くの人が迷うことの1つが以下の2つの違いです。 find_element find_elements 名前がほぼ同じなので混乱しがちですが、実は違いはとてもシンプルです。 この記事では、初心者でも理解できるようにfind_element と find_elements…
SeleniumでWebページを操作する場合、まず 要素を取得する必要があります。 そのために使うのが find_element です。 find_elementとは find_element はWebページの要素を取得するメソッドです。 例えば次のHTMLがあります。 <button id="login">ログイン</button> このボタンを取得する…
Seleniumを使うと、Pythonからブラウザを操作できます。ず最初に必要なのが ブラウザの起動です。 この記事では、SeleniumでChromeを起動する基本方法を解説します。 SeleniumでChromeを起動する まずは最も基本的なコードです。 from selenium import webdr…
Seleniumで業務自動化をしていると、必ず出てくるのがこの処理です。 ✔ レポートを自動ダウンロード✔ PDFを自動保存✔ CSVを毎日取得 この記事では、 ダウンロードフォルダの指定方法 Chromeで確認画面を出さずに保存する方法 PDFを自動保存する方法 ダウンロ…
Seleniumを使っていると、必ずと言っていいほど遭遇するのがこのエラーです。 NoSuchElementException または、 element not interactable この記事では、 Seleniumで要素が取得できない原因 find_elementの違い 明示的待機(WebDriverWait)の使い方 動的ペ…
銀行丸めと四捨五入の違いを理解する 「Round() を使ったのに、結果が合わない…」 これは VBA 初心者がよくはまる問題です。 VBA の Round() は四捨五入じゃない? Round(2.5)' → 2 Round(3.5)' → 4 VBA の Round は 銀行丸め(偶数丸め) です。 銀行丸め…
~minDistance 初期化の落とし穴~ Unityの ML-Agents で強化学習を作っているとき、こんなコードを書いていませんか? float minDistance = float.MaxValue; そしてこれを CollectObservations() 内でそのまま追加。 sensor.AddObservation(minDistance); …
~初心者が必ず混乱するポイントを完全整理~ Excel VBAで自動化をしていると、必ずぶつかる疑問があります。 「このブック、もう開いてる?」 「同じファイルを二重に開いてしまわないか不安…」 実務でもトラブルになりやすいテーマなので、正しい判定方法…
~画面に表示せずに高速処理する基本と注意点~ Excel VBAで自動化をしていると、次のような要望が必ず出てきます。 フォルダ内のExcelを開かずに処理したい 画面をチラつかせずに裏で更新したい 大量のブックを高速に処理したい この記事では、「開いていな…
~フォルダ整理を一瞬で終わらせるマクロ~ フォルダの中がこんな状態になっていませんか? C:\Test\ ├ 売上.xlsx ├ 請求書.pdf ├ 画像1.jpg ├ 画像2.png ├ データ.csv ファイル形式がバラバラで、毎回手作業で整理…。 そんなときに使えるのが拡張子別に自動…
~バックアップ・日次保存に超便利~ Excel VBAでファイル名を変更する処理はよく使いますが、特に需要が高いのが 「日付付きリネーム」 です。 例えば… Report.xlsx↓Report_20260320.xlsx のように自動で日付を付けたい場合の方法を解説します。 なぜ日付付…
なぜ難しい? Dir() は サブフォルダを自動では見てくれないため、「再帰処理」が必要になります。 再帰処理の基本形 Sub SearchFolder(ByVal folderPath As String) Dim file As String Dim subFolder As String file = Dir(folderPath & "*.xlsx") Do Whil…
はじめに 毎月・毎日同じ処理を複数のExcelファイルに対して行っていませんか?VBAを使えば、フォルダ内のExcelをまとめて自動処理できます。 基本:フォルダ内のExcelを順番に開く Sub FolderExcelBatch() Dim path As String Dim file As String Dim wb As…
VBA には「C〜」で始まる型変換関数がたくさんあります。 正直、どれを使えばいいのかわからない… そんな人向けに、実務で使うものだけを整理します。 よく使う C系変換関数一覧 関数 変換先 CInt Integer CLng Long CDbl Double CStr String CDate Date CBo…
〜「数値変換」で事故らないための超重要知識〜 Excel VBA で文字列や数値を扱っていると出てくる疑問。 数値変換では何を使えばいいの? どれを使えば安全なの?Val と CInt、何が違うの? この記事では、Val() と C系変換関数の本質的な違いを実例を挙げな…
〜遅い・ズレる・固まる…を一気に解決する〜 Excel VBA を実務で使っていると、必ずこういう悩みにぶつかります。 最終行がズレて処理漏れが起きる データが多いと処理が異常に遅い 途中で Excel が固まる 実はこれ、以下のような原因の場合が多いです。 最…
〜UsedRange は本当に使っていいの?〜 Excel VBA を書き始めて、ほぼ100%の人が一度は悩む問題があります。 「最終行を取得したいだけなのに、なぜかズレる…」「UsedRange が変な値を返す…」「どの書き方が正解なの?」 この記事では、End(xlUp) / End(xlT…
Excelマクロをある程度書いてくると、必ずこんな壁にぶつかります。 行数が増えると処理が遅い 重複チェックがややこしい ある値が「存在するかどうか」調べたいだけなのに大変 この悩みを 一気に解決するのが Dictionary です。 実務VBAでは、Dictionaryは…
Excelマクロが遅い。行数が増えると固まる。1万行を超えたあたりで「応答なし」……。 もしこんな経験があるなら、その原因はほぼ間違いなく セルを1つずつ触っていること です。 そして、その解決策が 「配列 + Dictionary」 の組み合わせ。 これはVBA高速化…
Excelマクロが遅い。行数が増えると一気に重くなる。For文を回すたびにイライラする…。 そんな悩みを一気に解決してくれるのがDictionary(ディクショナリ) です。 実務VBAでは 「重複チェック」 「件数カウント」 「高速検索」この3つでほぼ必須の存在です…
「毎月送られてくるExcelを1つにまとめたい」「フォルダ内のブックを全部集計したい」 これは VBAの定番ニーズの1つ です。 フォルダ内のExcelをすべて統合するためのマクロ例 例として、「C:\Data\」のフォルダ内に複数ブックを入れておき各ブックの1枚…
数千〜数万行のデータ。「標準の重複削除が遅い」「条件付きで消したい」そんな悩み、ありませんか? ここでは VBAで高速に重複を削除する方法 を紹介します。 方法①:RemoveDuplicates(最速&簡単) Sub RemoveDuplicateFast() With Worksheets("Sheet1")…
実務で超頻出の Format()。数値、日付、時刻などのデータを指定した書式(形式)の文字列に変換する標準関数で、主にYYYY/MM/DD(日付)、#,##0(数値の桁区切り)、HH:MM(時刻)といった形式で整形する際に使われ、結果はString型で返されます。=Format(式…
Excelマクロ(VBA)で日付を扱っていると、こんなことをしたくなる場面はありませんか? 今日から締切日まで あと何日? 入社日から 何か月経過した? 生年月日から 年齢を計算したい 月をまたぐとき、日数がズレて困る… そんなときに活躍するのがDateDiff()…
日付処理は、Excelマクロで最も検索されるジャンルの1つです。 その中でも超定番なのが DateAdd()。 DateAdd()とは? 書式 DateAdd(間隔, 数値, 日付) 間隔の指定例 指定 意味 "d" 日 "m" 月 "yyyy" 年 "h" 時 "n" 分 基本例:○日後を求める Debug.Print D…
〜Excel特有の“罠”を知らないと事故ります〜 「この値、日付かどうか判定したい」そんなときに使うのが IsDate()。 IsDate(値) 一見とても便利ですが、Excel VBAでは“思わぬTrue”が返ることがあるため注意が必要です。 IsDate()の基本 Debug.Print IsDate("…