• ベストアンサー

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

arataの回答

  • 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
質問者

お礼

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

関連する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関数の不具合と推測しています。 原因と対応策をご存知の方は教えて頂けないでしょうか。 宜しくお願い致します。