• ベストアンサー

Excel97で赤字で入力された氏名だけを拾い出す方法はありませんか?

A列に4000個以上の氏名が入力されています。 その中に、約20個ほど赤字で入力されている氏名があります。 4000個の中から20個の赤字の氏名を拾い出せる方法(関数?)があれば 教えていただけないでしょうか? よろしくお願い致します。

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

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

No2です。ご使用方法がわからないようですので書きます。 1.Alt + F11 または、[ツール] メニューの [マクロ] をポイントし、  Visual Basic Editorをクリックします。 2.Visual Basic Editor ウィンドウのメニューから、  [挿入]→[標準モジュール] をクリックします。 3.表示されたコードウィンドウに先ほどのマクロコードコピペします。 4.ワークシートに戻り、[ツール] メニューの [マクロ] →「マクロ」で今貼り付けたマクロ名を選択して、実行。

carina
質問者

お礼

出来ましたっ(涙) ご丁寧に説明してくださって、どうもありがとうございました。 助かりました!!

その他の回答 (2)

回答No.2

関数では無理だと思うのでVBAでやってみました。 A列であればデータ数を問いません。 A列の赤字をB列に上から順に間隔をあけず表示します。 Sub aka() n = 1 For Each c In Range("A:A") If c.Font.ColorIndex = 3 Then Cells(n, 2).Value = c.Value n = n + 1 End If Next End Sub VBAの使用方法が不明でしたら補足してください。

carina
質問者

補足

関数では無理なんですか。 VBA・・・Excelはあまり使わないので No.1の方の回答を見ても、やり方が解らず途方に暮れてました。 上記の数式(?)をどこに入力すればよいのかも解りません。 どうぞよろしくお願い致します。

  • w-inty
  • ベストアンサー率33% (76/227)
回答No.1

ちょっと希望とは違うかもしれませんが以下ではいかがでしょうか? Sub Color() Dim Color As String For i = 1 To 4000   '1行目から4000行目までデータがあると仮定 Color = Cells(i, 1).Font.Color If Color = "255" Then  '赤が「255」にあたるので。 Cells(i, 2) = Cells(i, 1) End If Next End Sub ※A列にデータが入力されており、赤字のものをB列に表示させるという動作を行います。 B列にデータがあった場合、上書きされますのでご注意ください。

carina
質問者

補足

すみません・・・ これはマクロですか? 申し訳ございません。マクロは全く解らないんです・・・(恥)