• ベストアンサー

エクセル2000で教えてほしいことがあります。

こんばんわ、エクセル2000を使用しています 「~には」とある文字列の「~」の前に中点をつけたいのですが、 関数で処理できるでしょうか? いろいろ調べているのですが、関数の扱いにもなれておらず、どうしてよいのか わかりません。 どなたか親切な方がいらっしゃいましたら教えていただけませんでしょうか? どうしたいのか、下記に例を記します。 「平行な2直線に接する円弧を作るには 」(修正前)         ↓ 「・平行な2直線に接する円弧を作るには」(修正後) という具合です。 よろしくお願い致します。

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

  • ベストアンサー
  • kbonb
  • ベストアンサー率51% (254/492)
回答No.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/
tariran
質問者

お礼

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

その他の回答 (6)

  • arata
  • ベストアンサー率49% (139/279)
回答No.6

マクロを作ってみました。 結構無限ループにはまったりして楽しめました。 現在アクティブなシートの全てのセルに対して処理します。 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 上記のプログラムは、見やすくするために行の先頭に全角のスペースを入れています(半角スペースだと、インデントがなくなってしまうため)ので、行の先頭の全角スペースを半角スペースに置き換えてから実行してください。

tariran
質問者

お礼

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

  • kbonb
  • ベストアンサー率51% (254/492)
回答No.5

こんにちは  最後に"には"が付く文字列の場合、あたまに"・"を付けるという条件でしたら、 =IF(COUNTIF(A1,"*には"),"・","")&A1 または、 =IF(RIGHT(A1,2)="には","・","")&A1  文中に"には"がある文字列の場合、あたまに"・"を付けるという条件でしたら =IF(COUNTIF(A1,"*には*"),"・","")&A1 でいかがでしょうか?

参考URL:
http://www2.odn.ne.jp/excel/
tariran
質問者

お礼

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

  • joy-m
  • ベストアンサー率30% (20/65)
回答No.4

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

tariran
質問者

お礼

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

  • 134
  • ベストアンサー率27% (162/600)
回答No.3

a1に元も文があったとして =IF(ISERROR(FIND("には",A1)),A1,CONCATENATE("・",A1)) というのは、いかがでしょう。

tariran
質問者

お礼

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

  • 134
  • ベストアンサー率27% (162/600)
回答No.2

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

  • Daifuku
  • ベストアンサー率36% (55/149)
回答No.1

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

tariran
質問者

お礼

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

関連するQ&A

  • AutoCADで円弧を書く方法

    初歩的な質問ですが、 AutoCADで2直線間に円弧を書きたいのですが、 上手く書けません。平行した2直線間に接する ように、円弧を書きたいのですがどうすればいいの でしょうか。OSはWin95で、2年ほど前に購入したものです。 宜しくお願い致します。

  • エクセルの文字内の空白の削除

    EXCELの表の列に下記のようにカタカナで氏名が入っています。 ヤマダ タロウ ヤマダジロウ できれば、全て空白を詰めて下記のように修正したいのですが、エクセルの関数若しくはBVAでは可能でしょうか??trim関数は前後の空白だけ削除ですよね?? 宜しくお願いします ヤマダタロウ ヤマダジロウ

  • MSエクセルのif関数にて

    MSエクセルのif関数にて 業務で、エクセルのifを使った関数を利用し処理しようと思っています。 K列にαまたはβが入力されており、 L列に日付が"2008-06-07"という形で入力されているデータ群があります。 そこで、処理したい内容は以下です。 ・もし、K=αなら、L列の日付に1年プラスしてM列に入力 例)2008-06-07 → 2009-06-07 ・K=βなら、L列の日付に2年プラスしてM列に入力 例)2008-06-07 → 2010-06-07 このようにif関数を作るには、M列にどのような値を入力したら良いでしょうか。 ご存知の方、ご教示下さい。宜しくお願い致します。

  • エクセルで2.01E+04表示を201E2に変換するのは?

    大量のデータを処理しなくてはならないのですが、ときどき送られてくるエクセルでデータに使われるEを含んだ記号文字列が数値になり、しかも下記のような表示に化けてしまってます。()内は数値です。 201E2⇒2.01E+04(20100) 803E7⇒8.03E+0.9(8030000000) 903E9⇒9.03E+11(903000000000) 最初から文字列で入れてくれればこんなことにはならないと思うのですが、お客様あってのことなのであまり強くは言えません。やむをえず一つずつ調べてこちらで修正をしています。 これを関数あるいはVBAで一括変換する方法はないでしょうか?

  • エクセル関数を教えてください

    はじめまして。 エクセルの関数で下記内容を処理したいのですが、どんな関数を使ったらよいかわからず困っています。 -------------------------- A列    B列 a-111  red a-333  orage b-222  white a-111  pink b-333  green a-111  black -------------------------- このような場合、 「a-111」と入力すると隣のセルに 「redpinkblack」というように、検索時にA列で該当したB列の文字を連結して表示したいです。 このようなことは可能でしょうか。 Excelの関数でできればと思っています。 よろしくお願いいたします。

  • Excel(エクセル)で価格帯別に集計したい

    エクセルの列に下記のようなバラバラな金額が並んでいます。 全部で3万個程あります。 1,000円ごとに数を知りたいのですが、どうしたらよいでしょうか? 1~1,000円が30個 1,001~2,000円が40個 2,001~3,000円が50個 といった具合です。 関数でできるのでしょうか? -------------- ¥1 ¥1 ¥1 ¥2 ¥2 ¥2 ¥2 ¥4 ¥6 ¥10 ¥10 ¥10 ~~~~~~ 省略 ~~~~~~ ¥11,239 ¥11,240 ¥11,246 ¥11,248 ¥11,250 ¥11,250 ¥11,250 ¥11,260 ¥11,269 ¥11,273 ~~~~~~ 省略 ~~~~~~ ¥358,000 ¥369,524 ¥396,900 ¥488,000 ¥504,747 ¥598,000 ¥720,825 ¥879,800 ¥980,000 ¥1,184,000 --------------- ちなみに、Excel2007を使用しています。 よろしくお願いします。

  • EXCELの関数について

    EXCELの関数について エクセルの関数で複数条件の場合の計算について 例 A列…日付 B列…支店名 C列…処理科目 D列…金額 ある支店の日付の範囲を指定し科目別金額の合計値を別シートに算出したいのですが、 SUMIF関数では、条件の範囲が設定できないみたいなので SUMPRODCUTを使っても同一列での条件設定でうまくいきません。 なにかうまい方法はありませんか

  • Excel と Word の連携について

    ExcelとWordの連携に関する質問です Excelで作成した図表をWordにリンク付けをして貼り付けることがよくあります。 こうすることで、Excelの図表を修正すれば自動的にword中のグラフも変わりますので、作業効率を上げることができますよね。 これと同じように、Word中の文言をExcel中の文字列からリンク付けをして貼り付けることは可能でしょうか? 以上、ご回答のほどよろしくお願いします。 □================================================================= 以下、長くなりますが、本質問の意図と目的を説明するために、例を追記いたします。 例1)アンケートの回収と速報資料作成の作業を同時にやっているような状況で、 「セグメント○○については、項目○○が最大で全体の○○%を占める。」 といったような文章があったとします。 アンケートは毎日少しづつ更新されており、文中の○○は少しずつ変わっていきます。 数値が変わるたびに手で修正するのは手間がかかりますしミスも発生します。 可能であればグラフが変わると同時に、本文中の文字列も刻々変わるようにできないか、と考えています。 例2) グラフのタイトルを作成するときに 上司から 「図表のタイトルのつけ方を『○○の出荷台数(○○県)』から『○○県の○○の出荷台数の推移』のように修正しなさい」 と指示されたとします。 wordに題を直接打ち込んでタイトルを作成すると、いちいちグラフの位置を参照しなければならないため、ミスも発生しますし文字通り手間もかかります。 また、文字列を関数で結合するなど、機械的に処理できませんし。 エクセル上でタイトルを一元管理しておけば、関数を使って編集することもできますし、修正するときにそれぞれのタイトルを見ながら確認できるのでミスが減るのではと思っています。

  • Excelで行と列に連番を振る方法

    Excelで行と列に連番を振る関数を教えて下さい。 例: A1に1を入力したら 以下、自動的に F1に2 A2に3 F2に4 という具合に自動反映する関数

  • Excel INDIRECT関数の不具合について

    お世話になります。 Excelのバージョンは2013で、ファイルの形式はExcel マクロ有効ブック(*.xlsm)、Windows7を使用しています。 3年程度同じ状態で使用していた下記の数式が、文字列として認識され計算結果を反映しない状態が発生するようになりました。 発生した場合は、該当箇所を選択し、区切り位置指定ウィザードから列のデータ形式をG/標準に戻すと不具合は修正されますが、該当箇所が多く、毎回修正するには手間がかかって困っています。 =IF(INDIRECT(ADDRESS(EU145,EV145))=0,"",INDIRECT(ADDRESS(EU145,EV145))) 不具合が発生するのは、INDIRECT関数を使用しているセル全てで、INDIRECT関数を使用していないセルには発生していないため、INDIRECT関数の不具合と推測しています。 原因と対応策をご存知の方は教えて頂けないでしょうか。 宜しくお願い致します。

専門家に質問してみよう