2026-01-01から1年間の記事一覧
Excel VBAで作業していると、 複数のPDFを1つにまとめたい シートごとに出力したPDFを結合したい 月次レポートを1つのPDFにしたい という場面があります。 例えば、 売上.pdf在庫.pdf集計.pdf を、 まとめ.pdf のようにしたいケースです。 この記事では、Exc…
Excelでは、 全シートをまとめて印刷したい 会議資料をPDF化したい レポートを一括出力したい という場面がよくあります。 そんな時はVBAで一発です。 ① すべてのシートをまとめて印刷する 最も簡単な方法はこちらです。 Sub PrintAllSheets() Worksheets.Pr…
Excelでよくある作業の1つがこれです。 シートごとに別ファイルにしたい 担当者ごとに配布したい 月別シートを個別保存したい そんな時は、VBAでシートを1つずつ別ブックに分割保存できます。 この記事では、その方法を説明します。 基本コード Sub SplitShe…
Excelでシートが大量にあると、シート名の変更がとても面倒になります。 例えば Sheet1, Sheet2 → 日付付きに変更したい 売上_1, 売上_2 → 連番にしたい 「2023」→「2024」に一括変更したい この記事では、シート名を一括変更するマクロをわかりやすく解説し…
VBAでは、シート名によって処理を変えることがよくあります。 例えば 「売上」なら集計 「データ」なら加工 「ログ」ならスキップ この記事では、シート名で条件分岐する方法を解説します。 方法①:Ifで分岐(基本) Sub BranchByName() Dim ws As Worksheet…
VBAで全シートを処理するとき、非表示シートは除外したいのに非表示シートまで処理されてしまうことがあります。 これを防ぐのが 非表示シートの除外 です。 シートの表示状態とは? VBAではシートの表示状態は3種類あります。 状態 意味 xlSheetVisible 表…
VBAで複数シートを扱うとき、**「特定のシートだけ処理したい」**場面はとても多いです。 例えば 「売上」シートだけ処理したい 「データ」シートだけ対象にしたい 一部のシートだけ集計したい この記事では、特定のシートだけ処理する方法を説明します。 方…
xcel VBAでよくあるトラブルの1つがこれです。 存在しないシートを操作してエラー Subscript out of range この記事では、シートが存在するか判定する方法をわかりやすく解説します。 方法①:On Errorを使う(定番) Function SheetExists(sheetName As Str…
普段このブログでは、Excelマクロ(VBA)やPython、Seleniumなど、主に業務効率化やプログラミング関連の記事を書いています。 今回は少し趣向を変えて、個人で開発したiPhoneアプリをご紹介します。 その名も、「ひらめき国語村 四字熟語編」です。 四字熟…
Excel VBAでは、特定のシートを操作するためにシートを名前で取得することがよくあります。 この記事では、シンプルかつ実用的な方法を解説します。 基本:シート名で取得する Sub GetSheet() Dim ws As Worksheet Set ws = Worksheets("Sheet1") MsgBox ws.…
Excel VBAでは、シートの操作(追加・削除・コピー)は非常によく使います。 例えば 新しいシートを自動で作成 不要なシートを削除 テンプレートシートをコピー この記事では、シートの追加・削除・コピー方法をまとめて解説します。 シートを追加する方法 …
Excel VBAでは、すべてのシート名を取得する処理がよく使われます。 例えば シート一覧を作る 自動処理の対象を確認 ログ出力 この記事では、シート名を取得する方法を初心者向けに解説します。 基本:For Each で取得する 最もよく使う方法はこちらです。 S…
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…