重複する文字のセルに色を塗る・削除する VBAマクロ

重複セルの抽出作業はよくある作業かと思います。

エクセルの機能で重複に色を塗る(条件付き書式)・重複を削除する機能(重複の削除)がありますが、

任意の文字にする場合の条件指定が面倒だったりしますし、いつも行う作業ならマクロで処理するべきです。

下記サンプルでは「りんご」という文字列に対して処理を行うマクロをご紹介します。

 

 

 

 

 

 

 

 

 

列内の任意の文字列の重複セルに色を塗るマクロは下記サンプル(サンプルはA列です。)


列内の任意の文字列の重複セルを削除するマクロは下記サンプル(サンプルはA列です。)

※Fornext構文でループさせてIf分で分岐させてます。

行やセルの削除については、Fornext構文にStep-1 とすることで行番のずれを防げます。

 

 

全てのセルから任意の重複する文字に色を塗るマクロは下記サンプルです。

UsedRangeでセルの範囲全てを変数Rngに格納してます。

 

条件付き書式でちまちま設定するよりやはりマクロの方が楽ちんですw

 

ではでは♪

リンクを更新しないで開く マクロ VBA ブックを開く時に警告を出さない VBA マクロ

ブックを開くマクロを書いても警告が出てせっかく書いたマクロがうまくいかないことがあります。(ー_ー)

これを回避するには、Workbooks.Openメソッドの引数

 

UpdatelinkFalseにしましょう!

 

サンプルコードは下記です。Sampleというブックを開くときにリンク更新の警告を表示させないようにしています。

ブックを開く際のマクロではあるあるパターンなので覚えておきましょう♪

 

ではでは!

Excelのテーブルってなんぞや? テーブル機能を使えばVlookUpが更に便利になる!

そもそもテーブルって何だ、イメージが沸かないという方は多いかと思います。

 

一言でいえば テーブルとは範囲のことです。

 

テーブルにはどんな機能があるかを下記に思いつく限りまとめてみました。

 

1、関数の参照がしやすい。

2、自動連番に対応している

3、行・列の追加・削除がしやすい

 

テーブルの一番有用な機能は1だと思ってます。

みなさん大好きVlookUp関数の参照範囲を最初から最後の行まで追跡してくれます♪

新しい商品リストの登録があったときなど、VlookUpの参照範囲を都度変更しなきゃならないのはあるあるだと思います。

参照元をテーブルにすれば、そんな非生産的で煩わしい作業から解放されます♪

 

テーブルを参照にしたVlookUpの使用方法は下記です。

C・D列はテーブルです(テーブル名:テーブル1としています。)。B2セルに品名を表示するサンプルです。

=Vlook(範囲(テーブル),調べるセル,テーブル範囲の列番(サンプルではテーブルの2列目なので2としています。),False)

 

有用点の2についてはテーブルの最終行の下のセルに新規入力したときテーブルの範囲に自動追加されます。

有用点3については実際に動かしてみてくださいww

 

今後どこの会社でもテーブル機能に限らずエクセルの色んな機能を使うことが多くなると思います。

会社に一人はエクセルの機能を理解している人がいないと会社が時代のスピードに取り残されてしまうことになってしまいます。

そんな時代でも生き残っていくにはITは必須です。

どんどんITを理解して自分も会社もハッピーになれればいいんじゃないかなと思います♪

 

ではでは(^^)

条件を指定して合計を算出するSUMIFS関数 もはやSUMIF関数は不要 複数条件SUMIF関数

条件の合計に便利な関数SUMIF関数。

 

SUMIF関数を覚えるよりSUMIFS関数を覚えれば一つの条件でも複数の条件でも応用が利きます。

 

使い方はSUMIFに慣れてる方だと勝手が違い混乱するかもしれませんが、慣れれば簡単・便利です♪

 

=SUMIFS(合計範囲,条件範囲1,条件1,条件範囲2,条件2……..)

※合計範囲は合計したい列のみくくる。 条件範囲1、 条件範囲2 などで条件範囲同士は範囲が被らないこと。

もし被るなら =SUMIFS(…) SUMIFS(…) +で分ければ合計できます。サンプルは下記です。

品名が「りんご」 分類が「フルーツ」 の合計をA2に算出しています。

 

 

ではでは♪

Split関数の使い方 Split関数の配列の要素の最大を調べる VBA マクロ

配列関連はあまり触れていなかったので今回は便利なVBA関数 Split関数について投稿します。

 

Split関数の使い方がわからない方は下記サンプルをご参照ください♪

タイトルのSplit関数の配列の最大の要素数は

Ubound関数で変数に代入して確認もしくはイミディエイトウィンドウに表示させるのが手っ取り早いです。

 

下記の画像のようにA1セルにコンマ区切りの文字列があるとします。

 

これを下記の画像のようにBセルに並べたりすることができます。↓

 サンプルコードは下記です。

任意の年月日を設定する関数DATE関数 TODAY関数 MONTH関数 YEAR関数 との組み合わせ

日付系の関数を覚えたてのころは何故だか、

他の関数に比べて覚えづらかったのを記憶しています。

TODAY()関数・NOW関数の使い方に関しては言うに及ばないかと思います。

日付関連の関数で覚えておきたいのはやはりDATE関数

=DATE(YEAR(TODAY()),MONTH(TODAY()),DAY(TODAY()))この組み合わせはよく使うかと思います。

 

10日後の日付を表記させたい!5日後の日付を表記させたい!7日前の日付を表記させたい!

というときには非常に重宝します♪

10日後であれば下記の画像のようにDAY関数の後に任意の数値を入れれば指定の日付が返されます。

 

7日前の日付であれば数値を-7とすればいいだけです。

 

これがスラスラわかるようであれば必ずVBAでも活きます♪

 

どんどん書いてみましょう(‘ω’)

末日の日付を調べる 関数 EOMONTH関数

VBAで末日を求める方法はご紹介しました

今月末日・先月末日・来月末日 を返すマクロ VBA

 

ただ単純にセルに任意の末日表記をしたい場合に便利なのがEOMONTH関数

 

使い方は簡単♪

=EOMONTH(開始日,開始日の月を基準にして、1とか-1の数値を指定する)

 

下記の画像のようにTODAY関数と組み合わせれば簡単に任意の月の末日を返すことができます(‘ω’)ノ

ちなみにサンプル画像のTODAYは11/1ですので+1の月で12月の末日が返されています。

 

 

 

ではでは♪

ピボットテーブルを作る マクロ VBA

クロス集計で便利なピボットテーブル。どこの会社でも使わない会社はないかと思います。

 

ただ、ピボットテーブルを作ることに時間をかけていては本来業務が進みません。

しかも、毎回毎回ピボットテーブルを作るのも面倒です。

ということでピボットテーブルを作成するマクロを紹介します♪

 

マクロでピボットテーブルを作るには手順があります。

1、元データを準備

2、セルに見出しラベルを設定する

3、シートを作成する

4、ピボットテーブルを作成する(範囲を指定する)←ココがピボットキャッシュ

5、作ったピボットテーブルをどのように設定するかを決める←ピボットテーブルスコレクションのプロパティを決める

ピボットテーブルのメソッドやプロパティを1から覚えるより、

マクロの記録で必要部分を変更させるほうが早いかと思います。

てなわけで早速マクロの記録で1~4を記録させましょう♪

 

記録させた内容を見ていくと、こんな感じ

長ったらしいコードですが、ピボットテーブルのキャッシュはコードの1~4行目で設定されています。

コードの1~4行目のソースデータの範囲を変数にすれば汎用性のあるピボットキャッシュができます。

コードの5行目以降はほとんど既定値のプロパティなので下記のように整理すればスッキリしたコードになるかと思います♪

ちなみに商品コードを行フィールドに加えるというマクロを追加しています。

ではでは♪

そもそもマクロって何ができるの?という方向け VBA マクロ で何ができるか

・マクロって何!?

・自動化できるって聞いたけどどんなものなの?・・

・実際に見てみたい!

・興味あるけど難しそう・・

・よくわからん!

っていう方は見てみていただければ♪

例題を沿ってどんな処理をさせているのかを実際にコードを書きながら動画にしてみました。

解説というより紹介動画なのであしからずw

動画撮影に慣れていないのでおどおどしゃべっているのはどうかご容赦くださいw

 随時更新していきますw