まえきんブログ

*日常・趣味・体験談・スキルアップ(Excel VBA ×ビジネス統計スペシャリスト)についての雑記ブログ*

スキルアップ.Excel VBA(学習編)

【Excel VBA学習 #64】行単位のセル範囲を操作する

まえきんです! 今回は行単位のセル範囲を操作する方法について学習しましたのでご紹介します。 今回は指定の列からある条件を満たすセルを検索して、条件に一致した場合は 対象となる行のフォントを太字にするマクロを考えます。 表のデータを行単位で指定…

【Excel VBA学習 #63】非連続のセルが選択されているかどうかを調べる

まえきんです! 今回は非連続のセルが選択されているかどうかを調べる 方法について学習しましたのでご紹介します。 今回は連続していない複数のセルを選択しているかを調べるマクロを考えます。 Excelの操作において、[Ctrl]キーを押しながらセルをクリック…

【Excel VBA学習 #62】アクティブシートではない別シートのセルを選択する

まえきんです! 今回はアクティブシートではない別シートの セルを選択する方法について学習しましたのでご紹介します。 今回は開いていないワークシートを開いて、 任意のセルを選択するマクロを考えます。 この場合、上記のようにワークシートのSelectメソ…

【Excel VBA学習 #61】アクティブセルを調べる

まえきんです! 今回はアクティブセルを調べる方法について学習しましたのでご紹介します。 今回はアクティブではないワークシートのアクティブセルを調べてみます。 これをVBAで調べようとすると上記のコードを記述します。 簡易的にマクロの実行ボタンを作…

【Excel VBA学習 #60】空白セルの行を削除する

まえきんです! 今回は空白セルの行を削除する 方法について学習しましたのでご紹介します。 今回は空白セルの行を削除するマクロを考えます。 空白セルを判定する場合、一般的にどういったコードを思いつくでしょうか。 例えばIf文でIf Cells(i,1) = "" The…

【Excel VBA学習 #59】特定のセルの行を削除する

まえきんです! 今回は特定のセルの行を削除する 方法について学習しましたのでご紹介します。 今回はA列に「ダミー」の文字列が入っている行を削除するマクロを考えます。 1点注意点があり、行を削除すると1行下のセルが上に繰り上がるため、 繰り返し処理…

【Excel VBA学習 #58】特定のセルの右に列を挿入する

まえきんです! 今回は特定のセルの右に列を挿入する 方法について学習しましたのでご紹介します。 あらかじめ作成された表について、特定の位置に列を挿入してみます。 今回は「Excel VBA スキルアップ」と入力されているセルの右に新しい 列を挿入するマク…

【Excel VBA学習 #57】特定のセルの左に列を挿入する.

まえきんです! 今回は特定のセルの左に列を挿入する 方法について学習しましたのでご紹介します。 あらかじめ作成された表について、特定の位置に列を挿入してみます。 今回は「Excel VBA スキルアップ」と入力されているセルの左に新しい 列を挿入するマク…

【Excel VBA学習 #56】列を挿入する

まえきんです! 今回は列を挿入する方法について学習しましたのでご紹介します。 列の挿入も、行の挿入と考え方は同じです。 今回学習した限りでは、上記のVBAコードのように2通りあります。 ①列全体を表すColumnsプロパティを使用する ②任意のセルが属する…

【Excel VBA学習 #55】特定のセルの下に行を挿入する

まえきんです! 今回は特定のセルの下に行を挿入する 方法について学習しましたのでご紹介します。 A列に文字列が入力されています。今回は「Excel VBA スキルアップ」の 下に新しい行を挿入するマクロを考えます。行を挿入することで、 調べるセル範囲の大…

【Excel VBA学習 #54】特定のセルの上に行を挿入する

まえきんです! 今回は特定のセルの上に行を挿入する 方法について学習しましたのでご紹介します。 A列に文字列が入力されています。今回は「Excel VBA スキルアップ」の 上に新しい行を挿入するマクロを考えます。行を挿入することで、 調べるセル範囲の大…

【Excel VBA学習 #53】行を挿入して書式は引き継がない

まえきんです! 今回は行を挿入して書式は引き継がない 方法について学習しましたのでご紹介します。 前回の#52では行を挿入して書式を引き継ぎましたが 今回はその逆を見てみます。 行の挿入の指定後に、ClearFormatsメソッドを使用します。 簡易的にマクロ…

【Excel VBA学習 #52】行を挿入して書式を引き継ぐ

まえきんです! 今回は行を挿入して書式を引き継ぐ 方法について学習しましたのでご紹介します。 前回の#51で学習したコードの続編ですが、行を挿入した際に新しく 挿入された行に対して上の行の書式を適用するか、下の行の書式を 適用するかについて、引数C…

【Excel VBA学習 #51】行を挿入する

まえきんです! 今回は行を挿入する方法について学習しましたのでご紹介します。 上記2種類の方法を使って行を挿入してみます。 ①行全体の挿入:Rows("4:5").Insert ②セルの挿入:Range("A7").EntireRow.Insert 簡易的にマクロの実行ボタンを作成して、上記…

【Excel VBA学習 #50】ワークシート関数を使って条件に一致するセルの数値を合計する

まえきんです! 今回はワークシート関数を使って条件に一致する セルの数値を合計する方法について学習しましたのでご紹介します。 前回の#49と同じく、A列に文字列が入力されていて、 「Excel VBA スキルアップ」の文言に一致する場合のみ B列の数値を合計…

【Excel VBA学習 #49】条件に一致するセルの数値を合計する

まえきんです! 今回は条件に一致するセルの数値を合計する 方法について学習しましたのでご紹介します。 前回の#48と同じく、A列に文字列が入力されています。 今回は「Excel VBA スキルアップ」の文言に一致する場合のみ B列の数値を合計します。For文でカ…

【Excel VBA学習 #48】条件に一致するセルの個数を数える

まえきんです! 今回は条件に一致するセルの個数を数える 方法について学習しましたのでご紹介します。 A列に文字列が入力されています。この中から「Excel VBA スキルアップ」 という文言が何個存在するかを調べてみます。 カウント変数cntを宣言して、条件…

【Excel VBA学習 #47】ワークシート関数を入力する

まえきんです! 今回はワークシート関数を入力する 方法について学習しましたのでご紹介します。 数値の計算(合計値等)を行う際、1からVBAのコードを書くよりも WorksheetFunction関数を使用し、既にExcelに実装されているお馴染みの 関数を呼び出す方が早…

【Excel VBA学習 #46】複数のセルに同じ数式を代入する

まえきんです! 今回は複数のセルに同じ数式を代入する 方法について学習しましたのでご紹介します。 セル範囲A1:A5に数値が入力されている状態とします。 上記のコードのように同じ数式を複数セルに指定することで一括代入 することが可能です。Excelは「=…

【Excel VBA学習 #45】コメントの枠を変更する

まえきんです! 今回はコメントの枠を変更する方法について学習しましたのでご紹介します。 コメント枠の実体はオートシェイプの四角形です。 残念ながらExcel2007からはツールバーの削除に伴い、手動操作で コメント枠を変更することができなくなりました。…

【Excel VBA学習 #44】セルのコメントに画像を表示する

まえきんです! 今回はセルのコメントに画像を表示する 方法について学習しましたのでご紹介します。 アクティブセルのコメントの背景に画像を表示するにはUserPictureメソッドで 表示したい画像を指定します。何も設定なしで表示するとコメント枠の 大きさ…

【Excel VBA学習 #43】コメントを編集状態にする

まえきんです! 今回はコメントを編集状態にする方法について学習しましたのでご紹介します。 既存のコメントをVBAで編集状態にするには、、、 実は専用のコードはないそうです、、、(^^;) そこで、手動操作と同じことを実行する方法になりますが、 SendKeys…

【Excel VBA学習 #42】セルのコメントを削除する

まえきんです! 今回はセルのコメントを削除する方法について学習しましたのでご紹介します。 セルのコメントを削除するには、CommentオブジェクトのDeleteメソッドを 使用します。削除する前には、セルにコメントを挿入する時(#29)と同じように そのセル…

【Excel VBA学習 #41】セルが空欄かどうか判定する

まえきんです! 今回はセルが空欄かどうか判定する方法について学習しましたのでご紹介します。 セルの空欄判定にもIsEmptyやLen関数を使用する等いくつか方法はあります。 Excel VBAでは上記のように判定するだけで事足ります。 簡易的にマクロの実行ボタン…

【Excel VBA学習 #40】セルが範囲内にあるかどうか判定する

まえきんです! 今回はセルが範囲内にあるかどうか判定する 方法について学習しましたのでご紹介します。 今回はアクティブセルがA1:C3セルの範囲内にあるかどうかを調べます。 それにはApplicationオブジェクトのIntersectメソッドを使用します。 引数に指…

【Excel VBA学習 #39】セルを並べ替える

まえきんです! 今回はセルを並べ替える方法について学習しましたのでご紹介します。 セルの並べ替えの手順として、以下の手順を踏みます。 ①SortFieldオブジェクトに並べ替えの条件を指定 ②Sortオブジェクトの並べ替え(Applyメソッド)を実施 ①の指定の前…

【Excel VBA学習 #38】色を設定する

まえきんです! 今回は色を設定する方法について学習しましたのでご紹介します。 色は「赤・緑・青」を組み合わせた数値で表現されます。 RGB関数の登場です。これは「RGB(赤,緑,青)」の3色の濃さを 0~255の数値で表現します。こうしたRGBの値を指定して色…

【Excel VBA学習 #37】空白セルだけを操作する

まえきんです! 今回は空白セルだけを操作する方法について学習しましたのでご紹介します。 今回登場するSpecialCellsメソッドは、 [ホーム]タブ→[編集]グループ→[検索と選択]→[ジャンプ]を 実行して表示される[ジャンプ]ダイアログボックスで[セル選択]を …

【Excel VBA学習 #36】3桁カンマ区切りの表示形式を設定する

まえきんです! 今回は3桁カンマ区切りの表示形式を設定する 方法について学習しましたのでご紹介します。 セルに入力された数値に3桁カンマをつけるにはFormat関数を使用します。 簡易的にマクロの実行ボタンを作成して、上記のコードを 実行すると下記のよ…

【Excel VBA学習 #35】文字列として入力する

まえきんです! 今回は文字列として入力する方法について学習しましたのでご紹介します。 A2~A4セルにデータを一括入力します。A2は自動的に日付と認識されます。 A3はシングルクォーテーション「'」を付与することによって文字列として 認識されます。そし…