わたろぐ

仕事、読書、ガジェット、グルメ、写真、旅行など雑多な備忘

VBA

【Excel】【VBA】HTTPリクエストを送信してステータスコードを取得する

複数のURLに対してGETリクエストを送信するというツールを作ったのでメモ。 今回はリクエストに対し、レスポンスのステータスコードを取得することにした。 A列にURLをセットし実行すると、B列にステータスコードがセットされる、というマクロ。 Sub Sample(…

【Excel】【VBA】テキストデータを出力する

VBAでエクセルの内容を処理し、テキストデータとしてアウトプットする。 例として以下のようなエクセルのファイルをよういする。 これをA1:B10の範囲でCSVとしてアウトプットする。 Sub CSV_OUTPUT() fnsave = "d:\work\出力結果.txt" 'アウトプットの場所 n…

処理の途中経過をステータスバーに表示する

VBAで処理を流すとき、件数が多ければ途中どれだけ処理したかが分からないまま固まってしまったような画面になってしまう。そこで処理の途中経過をステータスバーにメッセージとして表示することで、処理の進捗具合を確認できるようにする。 ステータスバー…

【VBA】 特殊文字を扱う

VBAで特殊文字を扱おうとしたところうまく行かなかった。 例えば©という文字、VBAのエディタ画面で入力すると「?」と表示されてしまう。 Dim str as String str = "? 株式会社〇〇" ' 変換してもコピペしても入力できない。 調べた結果、ChrWというメソッド…

【Excel】【VBA】複数のファイル、シートのヘッダー、フッターを一括で変更するマクロ

VBAからヘッダー、フッターを操作するには、シートオブジェクトのPageSetupオブジェクトを操作する。 例 Public Sub Main() ' 中央ヘッダーに「〇〇仕様書」という文字列を挿入 WorkSheets("Sheets1").PageSetup.CenterHeader = "〇〇仕様書" ' 右下フッター…

【Excel】【VBA】上下で列を比較し、同じであれば色を付ける

仕事中に書いたExcelマクロをメモ。 上下でセルを比較し、同じであれば色を付ける。 このとき、連続する値が切り替わったとき、分かりやすいように赤と黄色で交互に色を付ける。 例えば以下のような表があったとすると 処理後は以下のようになる。 aaaは連続…

【Excel】【VBA】2つのシートを比較して違うセルに色を付ける

仕事でサイズの大きな複数ののCSVファイルを比較することがよくある。 エクセルに開いてマクロで結果を出すのが効率的なので、2つのシートを比較するマクロをメモしておく。 Sub Macro() ' ' 2つのシートの同じ位置のセルの値を比較し、 ' 等しくなければそ…