こんばんわ、エクセル2000を使用しています

「~には」とある文字列の「~」の前に中点をつけたいのですが、
関数で処理できるでしょうか?
いろいろ調べているのですが、関数の扱いにもなれておらず、どうしてよいのか
わかりません。
どなたか親切な方がいらっしゃいましたら教えていただけませんでしょうか?

どうしたいのか、下記に例を記します。

「平行な2直線に接する円弧を作るには 」(修正前)

        ↓

「・平行な2直線に接する円弧を作るには」(修正後)

という具合です。
よろしくお願い致します。

A 回答 (7件)

こんにちは



 私もマクロで考えてみました。
 
・アクティブシートの全セルに対して処理します。
・末尾が「には」の文字列についてあたまに「・」をつけます。
・「には」を含む文字列についてあたまに「・」をつけるという条件の場合には、下記マクロで "*には" となっているところを "*には*" に変えます。
・数式は対象外です。
・既に「・~円弧を作るには」などあたまに「・」がついている場合には、「・」を追加しません。

Sub Test2()
Dim c As Range

For Each c In ActiveSheet.UsedRange
If Not (c.HasFormula) And c.Value Like "*には" _
And Left(c.Value, 1) <> "・" Then
c.Value = "・" & c.Value
End If
Next
End Sub
 

参考URL:http://www2.odn.ne.jp/excel/
    • good
    • 0
この回答へのお礼

ご親切に詳しくご説明いただき有難うございました。
参考にさせていただきます。
お礼遅くなって申し訳ありませんでした。

お礼日時:2001/01/29 23:53

マクロを作ってみました。


結構無限ループにはまったりして楽しめました。
現在アクティブなシートの全てのセルに対して処理します。

Sub Test1()
'
' 「には」を含む行の先頭に「・」を付加するマクロ
'
  Dim rng As Range
  Dim rngFirst As Range
  Dim strStartAddress As String
  '現在アクティブなシートに対して最初の検索
  Set rng = ActiveSheet.Cells.Find(What:="には", _
    LookIn:=xlValues, _
    lookat:=xlPart)
  If rng Is Nothing Then
    'みつからなかったら終了
  Else
    '見つかったら最初のアドレスを保存
    strStartAddress = rng.Address
    '検索が一周して、最初のアドレスに戻ってきたら終了
    Do
      '計算式が入っているところを修正してしまうとまずいので
      '計算式と値がいっしょのところの場合、修正
      If rng.Value = rng.Formula Then
        rng.Value = "・" & rng.Value
      End If
      '次を検索
      Set rng = ActiveSheet.Cells.Find(What:="には", _
        after:=rng, LookIn:=xlValues, _
        lookat:=xlPart)
    Loop Until rng.Address = strStartAddress
  End If
End Sub

上記のプログラムは、見やすくするために行の先頭に全角のスペースを入れています(半角スペースだと、インデントがなくなってしまうため)ので、行の先頭の全角スペースを半角スペースに置き換えてから実行してください。
    • good
    • 0
この回答へのお礼

有難うございます。
とてもわかりやすく説明していただき感謝しております。
お礼が遅くなって申し訳ありませんでした。

お礼日時:2001/01/29 23:54

こんにちは



 最後に"には"が付く文字列の場合、あたまに"・"を付けるという条件でしたら、

=IF(COUNTIF(A1,"*には"),"・","")&A1

または、

=IF(RIGHT(A1,2)="には","・","")&A1

 文中に"には"がある文字列の場合、あたまに"・"を付けるという条件でしたら

=IF(COUNTIF(A1,"*には*"),"・","")&A1

でいかがでしょうか?

参考URL:http://www2.odn.ne.jp/excel/
    • good
    • 0
この回答へのお礼

こんばんわ。とてもご丁寧な解答ありがとうございます。
感激です・・・涙・・・
早速挑戦してみたいと思います。
有難うございました。

お礼日時:2001/01/25 23:51

得たい回答とは違うかもしれませんが、該当するセルを選択し(フィルタで抽出すると早いと思います)、セルの書式の表示形式からユーザー定義を選び、種類の項に"・"@と設定すると修正できます。

    • good
    • 0
この回答へのお礼

こんばんわ。いろいろなやり方があるのですね。。
エクセルって使いこなせる様になったら重宝しそうです。
頑張ります。
ありがとうございました。

お礼日時:2001/01/25 23:52

a1に元も文があったとして



=IF(ISERROR(FIND("には",A1)),A1,CONCATENATE("・",A1))

というのは、いかがでしょう。
    • good
    • 0
この回答へのお礼

ご丁寧な解答有難うございます。
がんばってみます。
できるかな・・・・(笑)
有難うございました。

お礼日時:2001/01/25 23:53

 IF文、FIND文、ISERROR文 の組み合わせで できそうな気がしますが…

    • good
    • 0

「&」を使えばできますよ。


たとえば A1 のセルに「平行な2直線に接する円弧を作るには」が入力されているとします。
ここで B1 のセルに「・」 を入力し、C1 のセルに =B1&A1 としてみてください。
C1 のセルには「・平行な2直線に接する円弧を作るには」と表示されます。
ただ、C1 のセルの内容はあくまでも =B1&A1 という数式ですから、もし、文字列にしたければ
C1 のセルをコピーして好きなセルの上で右クリック→形式を選択して貼り付け→「値」に
チェックを付けて「OK」してやれば「・平行な2直線に接する円弧を作るには」という
文字列が入ります。
    • good
    • 0
この回答へのお礼

とても簡単でわかりやすくて、なるほど・・・と思いました。
ご丁寧な、アドバイス有難うございました。

お礼日時:2001/01/25 23:55

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報