9/21/2024

Excel。IMSIN関数は、複素数のサイン(正弦)を算出します。【IMSIN】

Excel。IMSIN関数は、複素数のサイン(正弦)を算出します。

<関数辞典:IMSIN関数>

IMSIN関数

読み方: アイエムサイン  

読み方: イマジナリーサイン

分類: エンジニアリング 

IMSIN関数

IMSIN(複素数)

複素数のサイン(正弦)を算出する


9/20/2024

Word。ルビを設定したら勝手に行が広がる。どのように対応したら行の高さ(行間)を戻せるの?【Line spacing】

Word。ルビを設定したら勝手に行が広がる。どのように対応したら行の高さ(行間)を戻せるの?

<Youtube>

Wordで、フリガナ(ルビ)を設定すると、なんと勝手に、行の高さ(行間)が広がってしまいます。


どのようにしたら、元の行間に戻すことができるのでしょうか。


ところで、そもそも、元の行の高さは、どこで確認したらいいの?など、対応方法をご紹介しております。

9/19/2024

Excel。順位を求めるRANK.EQ関数をスピル機能の数式でつくってみる【Spill】

Excel。順位を求めるRANK.EQ関数をスピル機能の数式でつくってみる

<RANK.EQ関数>

順位を求めるRANK.EQ関数ですが、スピル機能をつかった数式にすると、とてもわかりやすい数式になるので確認してみましょう。


まずは、通常のRANK.EQ関数の数式でつくってみましょう。

RANK,EQ関数

A列には店舗名

B列には、売上高が入力されています。


C2の数式は、

=RANK.EQ(B2,$B$2:$B$8)


最初の引数は、数値です。

秋葉原店の売上高が、全体で何位なのかということを知りたいわけですから、B2を設定します。


次の引数は、参照です。

範囲ですので、B2:B8。

オートフィルで数式をコピーしますので、絶対参照も忘れずに、設定する必要があります。


この絶対参照を忘れやすいので、注意が必要ですね。


さて、スピル機能の数式にしたら、どのようになるのでしょうか。

D2にスピル機能に対応したRANK.EQ関数を作ってみます。

=RANK.EQ(B2:B8,B2:B8)


最初の引数も、次の引数も、両方とも、B2:B8 と設定すれば大丈夫なんです。


しかも、スピル機能によって、オートフィルで数式をコピーすることはありませんので、絶対参照にする必要もありません。


このように、とてもわかりやすい数式に変えることができました。


今まで使っていた関数もスピル機能によって、数式の可読性をはじめ改善できるものがあるかもしれません。

9/18/2024

Excel。複素数の双曲線正割を算出するのが、IMSECH関数です。【IMSECH】

Excel。複素数の双曲線正割を算出するのが、IMSECH関数です。

<関数辞典:IMSECH関数>

IMSECH関数

読み方: アイエムセカントハイパーポリック  

読み方: イマジナリーハイパーポリックセカント

分類: エンジニアリング 

IMSECH関数

IMSECH(複素数)

複素数の双曲線正割を算出する 

9/17/2024

Excel。2024/8/25-8/31にTAN関数など紹介したFacebookページのコメントです。【comment】

Excel。2024/8/25-8/31にTAN関数など紹介したFacebookページのコメントです。

<Facebookページ>

Facebookページに書いた、Excelの豆知識(Trivia)です。

Facebookページのコメント

8月25日

Excel。

TAN関数

読み方: タンジェント  

分類: 数学/三角 

TAN(数値)

角度の正接(タンジェント)算出します 




8月26日

Excel。

TANH関数

読み方: ハイパーポリック タンジェント  

分類: 数学/三角 

TANH(数値)

数値の双曲線正接を算出します 




8月27日

Excel。

TBILLEQ関数

読み方: ティービルイーキュー  

分類: 財務 

TBILLEQ(受渡日,満期日,割引率)

米国財務省短期証券の債権に相当する利回りを算出します 




8月28日

Excel。

TBILLPRICE関数

読み方: ティービルプライス  

分類: 財務 

TBILLPRICE(受渡日,満期日,割引率)

米国財務省短期証券の額面100ドル当たりの価格を算出します 




8月29日

Excel。

TBILLYIELD関数

読み方: ティービルイールド  

分類: 財務 

TBILLYIELD(受渡日,満期日,現在価値)

米国財務省短期証券の利回りを算出します 




8月30日

Excel。

TDIST関数

読み方: ティーディスト  

読み方: ティーディストリビューション

分類: 互換性 

TDIST(x,自由度,分布の指定)

t分布の右側確率か両側確率を算出します 




8月31日

Excel。

T.DIST関数

読み方: ティー・ディスト  

読み方: ティー・ディストリビューション

分類: 統計 

T.DIST(x,自由度,関数形式)

t分布の左側(下側)累積確率か確率密度を算出します

9/16/2024

Excel。カタカナで入力している文字列を、ひらがなに変えるにはどうしたらいいの【ruby】

Excel。カタカナで入力している文字列を、ひらがなに変えるにはどうしたらいいの

<PHONETIC関数>

カタカナで入力されている文字列を、ひらがなに変更したい場合にはどのようにしたらいいのでしょうか。

カタカナで入力している文字列

Excel VBAでプログラムをつくってもいいのですが、もっと簡単にすることができないのでしょうか。


Excelには、カタカナをひらがなに変更する関数は、残念ながらありません。


ということは、努力と根性で、ひらがなで入力し直さないといけないのでしょうか。


そこで、少々、力技ではありますが、ルビ(ふりがな)の関数。PHONETIC関数をつかうことで、対応することができます。


C2にPHONETIC関数の数式を設定します。

=PHONETIC(B2)

オートフィルで数式をコピーします。


PHONETIC関数は、フリガナを表示する関数なので、B列に入力されている文字列の入力時の情報を表示することができます。


ただ、現状全角カタカナです。


表示したいのは、ひらがな。


そこで、B2:B6を範囲選択します。


ホームタブの「ふりがなの表示/非表示」の▼をクリックして、「ふりがなの設定」をクリックします。


ふりがなの設定ダイアログボックスが表示されます。


種類を「ひらがな」に変更したら、OKボタンをクリックします。


このように、ひらがな で表示することができました。


ただし、この方法、問題があって、B列の文字列にフリガナ情報がないと、PHONETIC関数をつかっても、フリガナが表示されませんので、注意が必要です。

9/15/2024

Excel。IMSEC関数で複素数の正割を算出できます。【IMSEC】

Excel。IMSEC関数で複素数の正割を算出できます。

<関数辞典:IMSEC関数>

IMSEC関数

読み方: アイエムセカント  

読み方: イマジナリーセカント

分類: エンジニアリング 

IMSEC関数

IMSEC(複素数)

複素数のセカント(正割)を算出する

9/14/2024

Excel。アラビア数字とローマ数字に変更することができる数字種の関数を動画で紹介。【Character】

Excel。アラビア数字とローマ数字に変更することができる数字種の関数を動画で紹介。

<Youtube>

Excel関数は色々あります。


ローマ数字にすることができるROMAN関数とアラビア数字にすることができるARABIC関数を紹介しております。


とてもわかりやすい関数ですが、VALUE!というエラーを表示してしまうので、注意が必要なんです。


9/13/2024

Excel。日付を直接入力した数式はシリアル値で考える必要があります。【DATE】

Excel。日付を直接入力した数式はシリアル値で考える必要があります。

<IF+DATEVALUE関数>

判定に使う日付をセルに入力している場合には、いいのですが、直接日付を引数に入力した場合、きちんと算出してくれないことがあります。


次の表を用意しました。

日付を直接入力した数式

B列に作業終了日という日付が入力されています。


C列には、2024/10/31以前ならば、○。

それ以降ならば、×と算出したいと考えています。


そこで、IF関数をつかって、C2に数式をつくります。


=IF(B2<=2024/10/31,"○","×")


オートフィルで数式をコピーします。


すべてC列は、2024/10/31以前も以降も関係なく、×になっています。


C2の数式を確認するために、数式タブの「数式の検証」を行ってみると原因がわかります。


2024/10/31の「2024/10」を数式と勘違いして、2024÷10として、さらに÷31をしています。


つまり、B列の日付がシリアル値という数値で、C列は「/」を割り算と勘違いして、除算した結果の数値と比べているために、結果がおかしくなっています。


日付として扱ってくれていないわけです。


だったら、”2024/10/31”と「”(ダブルコーテーション)」で日付を囲ってみたらどうなるのでしょうか。


今度は、すべて「○」となってしまいました。


これは、”2024/10/31”が日付ではなくて、文字列として判断されています。


そのため、シリアル値という数値と文字を比べていますので、当然、シリアル値である日付のほうが小さくなります。


よって、結果は「○」となってしまったというわけです。


紹介した両方とも、「日付」として扱ってくれていません。


Excelには日付はシリアル値という数値です。

日付型ではありません。

そこで、日付型というか、日付とExcelにわからせる必要があります。


そこで、DATEVALUE関数をつかって、数式を修正します。


=IF(B2<=DATEVALUE("2024/10/31"),"○","×")


DATEVALUE関数は、日付文字列にしてくれる関数です。文字列を日付扱いにしてくれます。


これで、きちんと算出してくれました。


このように、日付を直接入力して使う場合には、日付文字列にする必要がある場合、DATEVALUE関数を組み合わせることで対応することができます。

9/12/2024

Excel。IMREAL関数は、複素数の実数部分を取り出せます。【IMREAL】

Excel。IMREAL関数は、複素数の実数部分を取り出せます。

<関数辞典:IMREAL関数>

IMREAL関数

読み方: アイエムリアル  

読み方: イマジナリーリアル

分類: エンジニアリング 

IMREAL関数

IMREAL(複素数)

複素数の実数部分を取り出す

9/11/2024

Excel。条件付き書式のデータバー。数値があると読みにくいので、数値を非表示にしたい【Data Bars】

Excel。条件付き書式のデータバー。数値があると読みにくいので、数値を非表示にしたい

<Youtube>

セルの中に、「横棒グラフ」を表示する。


条件付き書式の「データバー」。


列内の数値の強弱を把握するのに便利なのですが、ハッキリいって、データバーの上に数値があると、読みにくい。


そこで、数値を非表示にしたいわけですね。


では、どのようにしたら、非表示にすることができるのでしょうか。


今回は、その方法をご紹介しております。

9/10/2024

Excel。パレート図のABCの棒グラフを自動的に別々の色に変更したい【Pareto chart】

Excel。パレート図のABCの棒グラフを自動的に別々の色に変更したい

<ABC分析とパレート図>

データが全体のA~Cのどこにあるのかがわかる、ABC分析。


数式を確認しておきましょう。


C2の構成比は、B9のSUM関数で算出した、売上高合計をつかって、算出しています。


=B2/$B$9


B9の合計は、オートフィルで数式をコピーしますので、絶対参照を忘れずに設定します。


パーセント表示にして小数第一位まで表示することにします。

オートフィルで数式をコピーします。


D2の累計構成比は、C列に算出した構成比の累計値です。


D2の数式は、

=SUM($C$2:C2)


始点を絶対参照にして、終点は、そのまま相対参照のままにします。

これで累計が算出できます。オートフィルで数式をコピーします


E列のABCですが、今回は、累計構成比の70%以下がA。

90%以下がB。

それ以外がCとします。


それを踏まえて、E2の数式は、

=IFS(D2<=70%,"A",D2<=90%,"B",TRUE,"C")

IFS関数をつかっていますが、IF+IF関数のネストでもOKです。


この数式も、オートフィルで数式をコピーします。


これで、どの店舗の売上高が、ABCのどのカテゴリーにあるのかが、確認できました。


このデータを元に、パレート図をつくります。


A1:B8とD1:D8を範囲選択します。


挿入タブの「統計グラフの挿入」のヒストグラムにパレート図があります。


これで、パレート図が完成しました。


ただ、できれば、A・B・Cなのかがわかりにくいので、色分けをしたいのですが、色分けをするには、棒グラフを一つずつ選択して、色を変える必要があります。


今回のデータは、少ないので、対応できる数かもしれません。


しかし、本来は、Cランクのデータは非常に多いので、自力で、棒グラフを選択して、色を変更するというのは、ほぼ無理といえます。


グラフ専用のアプリなどでは出来るようですが、Excelでは出来ないのでしょうか。


そこで、自動的にA・B・Cで色分けできるパレート図を紹介いたします。


Excelのグラフは、そのグラフを作るための表が必要になりますので、次のように表を修正します。


A・B・Cという列を追加します。


F2に設定した数式は、

=IF(E2="A",B2,0)

G2の数式は、

=IF(E2="B",B2,0)

H2の数式は、

=IF(E2="C",B2,0)


すべて、オートフィルで数式をコピーします。


追加した3列は、色分けするための列です。


ランクAならば、売上高をそのまま転記します。それ以外ならば0とします。

これを、ランクB・ランクCとつくります。


この追加した列をつかって、改めてパレート図をつくります。


A1:A8とD1:D8とF1:H8を範囲選択します。


挿入タブのおすすめグラフをクリックします。

 

グラフの挿入ダイアログボックスが表示されます。


すべてのグラフタブの「組み合わせ」をクリックします。


累計構成比は、第2軸にチェックマークをいれて、折れ線グラフに変更します。

A・B・Cはすべて、積み上げ縦棒グラフに変更します。


そして、OKボタンをクリックします。

パレート図

A・B・Cの棒グラフが別々の色にわけられたパレート図を作ることができました。


なぜ、棒グラフを、積み上げ縦棒にしたのかというと、棒グラフの太さを変更したい場合、積み上げ縦棒グラフにしておかないと、太さを変更することができないからです。


0という数字があるので、描かれていませんが、その0の縦棒グラフも太くなるのが原因です。


では、棒グラフを太くするのと、折れ線グラフの第2軸縦軸の上限を100%に変更していきます。


縦棒グラフを選択して、書式タブの「選択対象の書式設定」をクリックします。


データ系列の書式設定作業ウィンドウが表示されますので、系列のオプションにある「要素の間隔」を0にします。


つづいて、第2軸の縦軸をクリックします。


作業ウィンドウが、軸の書式設定にかわります。


軸のオプション の境界値にある「最大値」を1にします。

これで、100%までの縦軸にすることができます。


あとは、フォントサイズなどを整えたら完成です。

パレート図

このように、パレート図用の表を用意することで、自動的にABCで色分けしたグラフをつくることができます。

9/09/2024

Excel。DETECTLANGUAGE関数は、テキストの言語を検出し、言語コードを返します【DETECTLANGUAGE】

Excel。DETECTLANGUAGE関数は、テキストの言語を検出し、言語コードを返します

<関数辞典:DETECTLANGUAGE関数>

DETECTLANGUAGE関数

読み方: ディテクトランゲージ  

分類: 文字列操作 

DETECTLANGUAGE関数

DETECTLANGUAGE(text)

指定したテキストの言語を検出し、言語コードを返します

DETECT LANGUAGE の略

9/08/2024

Excel。2024/8/18-8/24にSWITCH関数など紹介したFacebookページのコメントです。【comment】

Excel。2024/8/18-8/24にSWITCH関数など紹介したFacebookページのコメントです。

<Facebookページ>

Facebookページに書いた、Excelの豆知識(Trivia)です。

Facebookページ

8月18日

Excel。

SUMSQ関数

読み方: サムスクウェア  

分類: 数学/三角 

SUMSQ(数値1,[数値2],…)

数値の2乗の合計を算出します 




8月19日

Excel。

SUMX2MY2関数

読み方: サム オブ エックススクエアエド マイナス ワイ スクエアエド  

読み方: サムエックスジジョウマイナスワイジジョウ

分類: 数学/三角 

SUMX2MY2(配列1,配列2)

Σ(x^2-Y^2)。対応する組の要素の平方差の合計します 




8月20日

Excel。

SUMX2PY2関数

読み方: サム オブ エックス スクエアエド プラスワイ スクエアエド  

読み方: サムエックスジジョウプラスワイジジョウ

分類: 数学/三角 

SUMX2PY2(配列1,配列2)

Σ(x^2+Y^2)。対応する組の要素の平方和の合計します 




8月21日

Excel。

SUMXMY2関数

読み方: サム オブ エックス マイナス ワイ スクエアエド  

読み方: サムエックスマイナスワイジジョウ

分類: 数学/三角 

SUMXMY2(配列1,配列2)

Σ(x-Y)^2。 対応する組の要素の差を2乗して合計します 




8月22日

Excel。

SWITCH関数

読み方: スイッチ  

分類: 論理 

SWITCH(式,値1,結果1,[既定または値2,結果2],…)

式で指定した値を比較して最初に一致する値を返す 




8月23日

Excel。

SYD関数

読み方: エスワイディー  

読み方: サムオブイヤーズディジット

分類: 財務 

SYD(取得価額,残存価額,耐用年数,期)

減価償却費を算術級数法で算出します(日本では利用が認められてない) 

Sum of Year's Digit depreciationの略




8月24日

Excel。

T関数

読み方: ティー  

分類: 文字列操作 

T(値)

文字列を抽出する

9/07/2024

Access。入会日から入会年数を求めるには、どのようにしたらいいのでしょうか。

Access。入会日から入会年数を求めるには、どのようにしたらいいのでしょうか。

<IIF+DATEDIFF関数+DATE関数+Format関数>

入会日から何年所属しているのかを確認したいわけですが、ExcelのDATEDIF関数のようなDATEDIFF関数というのがAccessにもあります。


ただ、ExcelのようにDATEDIFF関数を使うだけでは、満年齢を算出するのが難しいようです。


次のテーブルがあります。

入会日から入会年数

2024/2/1までの満年齢を求めたいので、クエリをつかって、求めます。


作成タブのクエリデザインをクリックします。


入会日から年数を求めますので、演算フィールドをつくります。

年数: DateDiff("yyyy",[入会日],#2024/02/01#)


ExcelはDATEDIF関数ですが、AccessではDateDiff関数を使います。

引数は、満年齢で表示したいので「”yyyy”」。

開始日は「入会日フィールド」をつかいます。

終了日は「#2024/2/1#」までとします。

日付は「#」で囲みます。


では、クエリを実行してみましょう。


入会年数が表示されましたが、何かおかしいです。


2024/2/1 なので、2023/2/2はまだ1年経っていないハズなのに、1年と算出されています。


2023/12/31も2024/2/1からみれば、たった、32日前なのに、1年と算出されています。


2024/1/1も2024/2/1からみれば、たった、31日前ですが、こちらは、0年と算出されています。


AccessのDateDiff関数は、その期間中にある、1月1日をカウントした結果を算出している、昔の満年齢のような算出をしているので、おかしな結果が表示されていたというわけです。


そこで、演算式を修正する必要があります。


修正年数: IIf(Format([入会日],"mm/dd")>Format(#2024/02/01#,"mm/dd"),DateDiff("yyyy",[入会日],#2024/02/01#)-1,DateDiff("yyyy",[入会日],#2024/02/01#))


すごく長くなりましたが、実行してみます


これで、正しく、満年齢を求めることができました。


さて、この長い数式ですが、いったい何をしているのか、説明します。


ExcelのIF関数にあたる、AccessのIIf関数をつかって、条件分岐をしております。


入会日を「mm/dd」という表示にして、終了日の日付も「mm/dd」にします。


これで、日付で比較することができます。


仮に 3/1ならば2/1とくらべて大きいわけです。まだ入会日を迎えていないので、「-1」する仕組みです。


このような方法で、Accessでも満年齢を求めることができます。

ただ、Excelのように楽に設定はできないようです。

9/06/2024

Excel。複素数の積を算出するのが、IMPRODUCT関数です。【IMPRODUCT】

Excel。複素数の積を算出するのが、IMPRODUCT関数です。

<関数辞典:IMPRODUCT関数>

IMPRODUCT関数

読み方: アイエムプロダクト  

読み方: イマジナリープロダクト

分類: エンジニアリング 

IMPRODUCT関数

IMPRODUCT(複素数1,[複素数2],…)

複素数の積を算出する

9/05/2024

Excel。セル内の特定の文字を手早く数えるには、どのようにしたらいいのでしょうか。【character】

Excel。セル内の特定の文字を手早く数えるには、どのようにしたらいいのでしょうか。

<Youtube>

セル内の文字数を知るには、LEN関数をつかいますが、特定の文字となると、対応することができません。


では、どのようにしたらセル内の特定の文字を数えることができるのでしょうか。

9/04/2024

Excel。日付から週番号は週番号でも、ISO国際標準化機構のISO週番号を知りたい【Week Number】

Excel。日付から週番号は週番号でも、ISO国際標準化機構のISO週番号を知りたい

<WEEKNUM関数・ISOWEEKNUM関数>

カレンダーに第何週というように記載されていることがあります。


ところが、外資系の会社のスケジュール表をみると、1月1日を含む週を第1週としていないことがあります。


多くが、ISO国際標準化機構のISO週番号を採用しているようです。


このISO週番号は、最初の木曜日を含む週がその年の第1週と定められています。

ISO国際標準化機構のISO週番号

 

例えば、2025/1/1は水曜日です。そうなると、最初の木曜日は2025/1/2なので、2025/1/2が含まれている週全体が、第1週ということになるわけです。


よって、2024/12/31は、前年ですが、週としては、第1週という扱いになるわけです。


これをどのようにしたら、求めることができるのでしょうか。


最初の木曜日が…と考えそうですが、ISO週番号を求めることができる関数があります。

それが、「ISOWEEKNUM関数」です。


通常の週番号を算出するのが、WEEKNUM関数です。

C2には、

=WEEKNUM(A2)

という関数が設定してあります。


そして、ISO週番号は、D2に数式を設定してあります。

=ISOWEEKNUM(A2)


あとは、オートフィルで数式をコピーします。


これで、ISO週番号に対応した週番号を算出することができました。

9/03/2024

Excel。IMPOWER関数で複素数のべき乗を算出できます。【IMPOWER】

Excel。IMPOWER関数で複素数のべき乗を算出できます。

<関数辞典:IMPOWER関数>

IMPOWER関数

読み方: アイエムパワー  

読み方: イマジナリーパワー

分類: エンジニアリング 

IMPOWER関数


IMPOWER(複素数,数値)

複素数のべき乗を算出する 

9/02/2024

Excel。2024/8/11-8/17にSUBTOTAL関数など紹介したFacebookページのコメントです。【comment】

Excel。2024/8/11-8/17にSUBTOTAL関数など紹介したFacebookページのコメントです。

<Facebookページ>

Facebookページに書いた、Excelの豆知識(Trivia)です。

Facebookページ

8月11日

Excel。

STOCKHISTORY関数

読み方: ストックヒストリー  

分類: 財務 

STOCKHISTORY(stock,start_date,[end_date],[interval],[headers],[properties1],…)

指定された銘柄と日付範囲の過去の相場データの配列を返す 




8月12日

Excel。

SUBSTITUTE関数

読み方: サブスティチュート  

分類: 文字列操作 

SUBSTITUTE(文字列,検索文字列,置換文字列,[置換対象])

文字列中の特定の文字を別の文字に置換する 




8月13日

Excel。

SUBTOTAL関数

読み方: サブトータル  

分類: 数学/三角 

SUBTOTAL(集計方法,参照1,…)

11種類の集計方法で小計を算出します 




8月14日

Excel。

SUM関数

読み方: サム  

分類: 数学/三角 

SUM(数値1,[数値2],…)

数値の合計します 




8月15日

Excel。

SUMIF関数

読み方: サムイフ  

分類: 数学/三角 

SUMIF(範囲,検索条件,[合計範囲])

条件付きで数値の合計を行います 




8月16日

Excel。

SUMIFS関数

読み方: サムイフズ  

読み方: サムイフエス

分類: 数学/三角 

SUMIFS(合計対象範囲,条件範囲1,条件1,…)

複数の条件付きで数値の合計を行います 




8月17日

Excel。

SUMPRODUCT関数

読み方: サムプロダクト  

分類: 数学/三角 

SUMPRODUCT(配列1,[配列2],[配列3],…)

複数の数値の組を掛け合わせて合計を行います 

9/01/2024

Excel。VBA。シート内に入力されているメモを抽出した一覧をつくりたい【memo】

Excel。VBA。シート内に入力されているメモを抽出した一覧をつくりたい

<VBA:Comment.Text>

Excelのシート内に、入力されているメモ。


以前は、コメントといっていましたが、結構注意書きとかが入力されていることがあります。

メモを抽出した一覧
 

基本的にメモは、マウスをそのセルの上に乗せることで、表示されてるようになっています。

ただ、それだと、面倒です。


また、メモを表示することできますが、メモ同士が重なってしまい、見にくいこともあります。


さらに、そのメモの内容を、取り出した一覧となると、コピーするのも面倒です。


そこで、Excel VBAでプログラムを作って対応したいと思います。


Sub メモ内容をセルに抽出()

    Dim memo As Range

    Dim lastrow As Long

    Dim i As Long

    

    i = 1

        

    With Range("a1").CurrentRegion

        For Each memo In .SpecialCells(xlCellTypeComments)

            Cells(i, "e") = memo.Address(False, False)

            Cells(i, "f") = memo.Comment.Text

            i = i + 1

        Next

    End With

End Sub


まずは、実行してみます。


ご覧のように、メモの内容を、別のセルに抽出し、表示することができました。


では、プログラムを確認します。

最初は変数宣言です。

Dim memo As Range

Dim lastrow As Long

Dim i As Long


表示する行番号のために 変数iに1を代入します。

 i = 1

        

可読性をあげるために、Withをつかっています。

With Range("a1").CurrentRegion ~ End With

これで、「Range("a1").CurrentRegion」を省略することができます。


For Each memo In .SpecialCells(xlCellTypeComments) は、メモが入力されているセルを探しています。


Cells(i, "e") = memo.Address(False, False) は、E列に、メモが入力されているセル番地を表示する様に設定しています。


Cells(i, "f") = memo.Comment.Text は、F列にメモに入力されている文字列を抽出し、表示しています。


メモが多く、表示するのが大変などに、このようなプログラムを用意しておくといいかもしれません。