• ベストアンサー

エクセルマクロで2つのセルに入っているコメントを比較したい

よろしくお願いします。 エクセルマクロで異なる2つのセルAとBに入っているコメントを比較しその結果を表示させたいと思ってます。具体的には、 1.セルAのコメントなし   セルBのコメントなし   ⇒比較結果として「1」を表示 2.セルAのコメントあり   セルBのコメントなし   ⇒比較結果として「2」を表示 3.セルAのコメントなし   セルBのコメントあり   ⇒比較結果として「3」を表示 4.セルAのコメントあり   セルBのコメントあり   かつ両コメントが等しい   ⇒比較結果として「4」を表示 5.セルAのコメントあり   セルBのコメントあり   かつ両コメントが等しくない   ⇒比較結果として「5」を表示 というものです。 何卒よろしくお願い申し上げます。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

こんにちは。 Sub Test()  Dim rng(2), cmt(2), chk  rng(1) = "D2"  rng(2) = "C11"  cmt(1) = Range(rng(1)).NoteText  cmt(2) = Range(rng(2)).NoteText  Select Case cmt(1)   Case Is <> ""    Select Case cmt(2)     Case Is = ""      chk = 2     Case Else      If cmt(1) = cmt(2) Then chk = 5 Else chk = 4    End Select   Case Else    If cmt(2) <> "" Then chk = 3 Else chk = 1  End Select  MsgBox chk End Sub とか・・・

tarobei
質問者

お礼

早速のご回答ありがとうございました。 なるほど「NoteText」というのでコメントを取得できるのですね! やってみます。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

Sub test01() Dim a As Range, b As Range Dim ans As String Set a = Range("A1") Set b = Range("B1") If a.Comment Is Nothing And b.Comment Is Nothing Then If b.Comment Is Nothing Then ans = "「1」を表示" If Not b.Comment Is Nothing Then ans = "「3」を表示" Else If b.Comment Is Nothing Then ans = "「2」を表示" If Not b.Comment Is Nothing Then If a.Comment.Text = b.Comment.Text Then ans = "「4」を表示" Else ans = "「5」を表示" End If End If End If MsgBox ans, vbInformation, " ( ̄ー ̄)v " End Sub ではどうでしょう。

tarobei
質問者

お礼

早速のご回答ありがとうございました。 こういう方法もあるのですね。参考になります。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Excelマクロでセルの比較

    Excelマクロでセルの比較 まだマクロ初心者なので、詳しいことがわからなくて困っております。 例)●前提として何行目まであるかは変化します     (A列)(B列) (1行目) 35  35 (2行目) 26  26 (3行目) 13  13 (n行目) 12  12 ※n=最終行 【やりたいこと】 このようにシートに入力されていたとして、 「A1=B1?」⇒「A2=B2?」⇒「A3=B3?」⇒「An=Bn?」と比較を進めていき不一致の有無を出す。 もし不一致がなければ、そのまま通過しその次のマクロを実行していく。 不一致があった場合には、不一致の行を別ファイルに出力してファイル保存し、ファイルを閉じる。 マクロを実行している元のファイルは、保存せずにファイルを閉じる) 行の長さが変化するため、その変化にも対応した処理を実行したいと思っております。 本やサイトで調べてみたのですが、基礎知識がないためうまく処理をさせるマクロを作ることが出来ませんでした。 このようなマクロが可能なのかもわかりませんが、出来ましたらこのマクロを教えていただけますでしょうか。 宜しくお願いいたします。

  • エクセルマクロの質問です。

    エクセルマクロの質問です。 こんにちは マクロを勉強し始めて早速つまずきましたので、ご教授お願いいたします。 IF文で、表示されている値を比較することは可能でしょうか? 例えば A1のセルに2010/12/31といれて、書式設定から表示形式をd"日"とします。 するとA1セルには31日と表示されます。 また、B1セルに31日と直接打ち込んでA1とB1セルを比較させたいと考えています。 このように表示されているものを比較することは可能でしょうか? 可能であればその方法をご教授お願いします。 よろしくお願いいたします。m(_ _)m

  • Excelのセルの比較について

    Excelのマクロにてセルの比較を行っています。 A1に"123" A2をハイパーリンクに指定して"123"と表示しています。 表示形式はどちらも通貨で表示しています。 If Range(A1).Value <> Range(A2).Value Then   MsgBox "同じではない" Else   MsgBox "同じ" End If と比較しているのですが"同じではない"が表示されてしまいます。 試しに MsgBox Range(A1).Value と MsgBox Range(A2).Value を表示してみたところ、どちらも"123"と表示されました。 セルに表示されている値で比較するにはどうしたらいいのでしょうか?

  • Excelのマクロ>セルにカーソルがあたったらコメントを表示する

    こんにちはtmgmです。 Excelのマクロについての質問です。 私はよくExcelでコメントを挿入します。コメントは(非表示の場合は)本来マウスカーソルが当たると表示されますが、これをマクロを使ってちょっと改造したいです。その改造したい内容というのは、”セルにカーソルが当たったときだけコメントを表示する”というものです。仕事がらプログラムを組むことが多く、マウスをあまり使いません。ですのでExcelのコメントをキーボード操作で確認したいというのが本来の目標です。 どなたかお分かりになる方、いらっしゃいましたらご返答宜しく御願いします。

  • エクセルのマクロ

    エクセルのマクロでわからないことがあり質問なんですが A1セルの数値がリアルタイムに更新されていて このA1セルの数値が更新されるたびに B1とB2にA1セルの最新の値を交互にコピーしていくマクロを 作りたいんですがうまくいきません。 例としては A1に1と表示→B1に1と表示 A1に7と表示→B2に7と表示 A1に18と表示→B1に18と表示 これをA1セルが更新され続ける限り繰り返しすマクロです。 どなたか教えていただけるとありがたいです。

  • エクセルのコメントについて

    いつも有難うございます。 エクセル2003であるセルにコメントを表示させているのですが、マクロで並び替えをするとコメントだけは並び替えできずに元のセルから動きません。コメントもマクロで動かすことはできるのでしょうか? 何か方法をご存知の方宜しくお願いいたします。

  • エクセル セルの比較

    セルの比較について教えてください。 A1~A10と、B1~B10に文字が入っています。 Aがりんごのときは、Bは果物、 Aがキャベツのときは、Bは野菜 となっていなければなりません AとBの同じ行のセルの内容が、この条件と一致しないものが、1行から10行までひとつでもあった場合に、C1に『一致していない箇所があります』と出るようにしたいです。 マクロは使わないでお願いします。

  • セルの比較

    初投稿させていただきます。宜しくお願い致します。 office系のソフトは初心者で何とかならないものかと悩んでます。 excelで特定のセルのデータと行全体を比較して、一致する文字列を含んだセルを返してほしいのです。 それを各セルごとに行い、まとめて別のシートに出力させることは可能でしょうか? たとえば   A    B    C 1 あい  い   う 2 いか  う   えい 3 うみ  え   お 4 えい  お   か 5 うさ  か   き があって Cの各セルとA行全体を比較して結果を別に出力  ・・・ D 1    A3,A5 2    A4 3 4 5 ない場合は空白でも×でもいいのですが こんな感じにできないでしょうか。 実際のデータはファイルが別になっていてファイルAのC行とファイルBのB行のセル(200個くらい)との比較といった感じです。 いろいろ調べては見たのですが、うまくいかず・・・ 欲張った内容かも知れません。 すみませんがどなたかいい方法を教えて頂けませんか。

  • エクセルでの複数セルの比較

    エクセル初心者です。 ご教授ください。 画像のように AとBの値を比較した時 B2~N2までのセルの値が B7~N7までのセルの値と 等しければOKと表示させるには どうすれば良いのでしょうか? IF関数で試したのですが うまくいかずに・・・

  • Excel(セルの結合マクロ)

    いつもお世話になっております。 Excelのマクロで、選択範囲の中で、下のセルが空白のものは、上のセルと結合されるマクロを作りたいと考えています。 (例1:A1セルに”TEST”が入力されており、A2,A3セルが空白として、A1:A3を選択し、マクロを実行するとA1からA3がセル結合される  例2:A1に”TEST2”B2に"TEST3"が入力されており、A1:B3を選択すると、A1からA3が結合され、B2とB3も結合される) 説明が下手で申し訳ないのですが、お力を貸していただけませんでしょうか? よろしくお願いいたします。

専門家に質問してみよう