• ベストアンサー

Excel VBA 選択範囲の空白に文字を入れる

real beatin(@realbeatin)の回答

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

こんにちは。 そういう処理はマクロを考えるより 手を動かした方が早く片付きます。 マクロが必要だとしても、 まずは、手作業の手順を確認して、 そのまま[マクロの記録]を録れば、 十分機能するマクロを得ることができます。 以下、手作業での手順  C列の[列見出し]をクリックして、C列全体を選択  [Ctrl]+[Shift]+[↑]キーで選択範囲をデータ範囲に限定  [F5]キーで[ジャンプ]ダイアログを表示   [セルの選択]をクリック   [選択のオプション]で[空白セル]を選択→[OK]  空白セルが選択されている状態を維持したまま、  【Total】とタイプし、続けて[Ctrl]+[Enter]キーで確定。 以上の作業を実践に[マクロの記録]で得られる記述が以下。 Sub Macro1() ' ' Macro1 Macro ' '   Columns("C:C").Select   Range(Selection, Selection.End(xlUp)).Select   Selection.SpecialCells(xlCellTypeBlanks).Select   Selection.FormulaR1C1 = "Total" End Sub 簡潔に纏まるよう書き直したものが以下。 Sub Re8952109()   On Error Resume Next   Range("C1:C" & Cells(Rows.Count, "C").End(xlUp).Row).SpecialCells(xlCellTypeBlanks).Value = "Total" End Sub > C行の空白(添付ではC10,17,18)にTotalという文字を抜き出して入れる ひょっとして、ですが、、、 B列の「名古屋Total」を「名古屋」に置き換えることを含みに、 "抜き出して入れる"という表現を使っている場合は、 上記の手順の後に、B列に対して[置換]機能で【Total】を削除すれば 済みますので、こちらから特に書き足しませんが、工夫してください。 ご説明への理解が至っていなくて、お求めの答えと違っている場合は補足してください。 以上です。

関連するQ&A

  • 総計をエクセルVBAで出すには。。

    A列にいくつかランダムに小計が入っておりB列の数値をA列の小計が入っている 行まで数式で足しています。 例=SUM(B16:B20)   A列の最終行に総計が入っているのですが総計にはB列のいくつかの小計行を 足して総計を出したいです。 小計を出すにはこちらで教えて頂き、VBAで自動でいれることができたのですが 総計をいれることができません。 VBAではどのように組めばいいのでしょうか?

  • VBAで任意の文字列の数のカウント方法を教えてください。

    VBAで任意の文字列の数のカウント方法を教えてください。 A a:b c:d a:b:d c:d a a:b:c:d ・ ・ ・ というデータがあります。 ひとつのセルにa~dまでの項目がランダムに入っており、項目は:で区切られています。 1つのセルに項目が重複することはありませんが、入っている項目数はバラバラです。 空白もあり得ます。 データの数(行数)は都度、変わります。 この時のa~dの項目のそれぞれの集計を取りたいのですが、VBAで作成する方法を教えてください。 トータルで、aが4個、bが3個、cが3個、という集計を一度に出したいのです。 よろしくお願いします。

  • EXCEL VBA 条件による空白挿入

    EXCEL2003を使っています。 以下のように列FGHが空白の行については列ABCを空白を挿入したいのですが数万行あり処理をVBAで自動化したいです。どなたかお力をお貸し下さい。お願いします。 A B C D E F G H 1 1 2 3 4 5 6 7 8 2 1 2 3 4 5 _ _ _ 3 1 2 3 4 5 6 7 8 4 1 2 3 4 5 _ _ _ 5 1 2 3 4 5 6 7 8 ↓ A B C D E F G H 1 1 2 3 4 5 6 7 8 2 _ _ _ 1 2 3 4 5 3 1 2 3 4 5 6 7 8 4 _ _ _ 1 2 3 4 5 5 1 2 3 4 5 6 7 8

  • エクセルのデーター集計

    エクセルのデーター集計について教えて下さい。 データーを集計する為、エクセルの データー → 集計 でデーターを集計すると項目毎の金額の列の下に合計が表示され、総計が同じく金額の列の一番下に表示されるといった形だと思いますが、(下記のように) A  1000 A  1000 A  1000 計 3000 B  1000 B  1000 計 2000 C  1000 C  1000 C  1000 計 3000 総計8000 この計及び総計を隣の列にくるようにはできないのでしょうか?宜しくお願いします。

  • Excelの小計機能をVBAでやりたいです。

    Excelの小計機能をVBAでやりたいのですが、うまくいきません。 3列目に「取引日」があり、 10列目に「金額」があり、 「取引日」別に金額の小計を出したいのですが、 手動で、データ→小計をやると、日付が「2011/7/25 集計」とうまくいくのですが、 VBAで、Subtotalをやると、日付が「25/7/2011 集計」となってしまいます。 VBAの一部ですが、 並び替え後 Selection.Subtotal GroupBy:=3, Function:=xlSum, TotalList:=Array(10), SummaryBelowData:=True を実行させています。 取引日も全て「2011/7/25」などの形式で入力されています。 VBAで、「25/7/2011 集計」を「2011/7/25 集計」と指示するにはどうしたらよいでしょうか。

  • Excel VBA - 空白の結合

    以下のようなExcelのシートがあります。 A2からC7を選択した後、マクロを走らせて空白セルを結合したいです。   A B C 1 (空白) DDD (空白) 2 ABC 123 (空白) 3 (空白)(空白)(空白) 4 DEF GHI DEF 5 (空白)(空白)(空白) 6 (空白) 789 123 7 (空白)(空白)(空白) 8 GHI JKL MNO A3はA2と結合、A5,6,7はA4と結合、B列、C列も同様です。 要は、空白セルを上にある値の入ったセルと結合したいのです。 ただ、C2が選択範囲外のC1と結合すると困るので、先頭行の空白は、上の選択範囲外セルと結合しないようにしたいです。C2とC3は、結合しませんが、結合する仕様でも問題ありません。 (A2と同じ値をA3に入れた方がいいという意見があると思いますが、会社の表なので結合しないといけません。) ※以前、似たような質問をしましたが、少し違います。(これは未解決です。)

  • EXCEL VBA 空白行を含んだ範囲選択

    EXCEL VBA超初心者です。 EXCELのVBAについての質問です。 以下のような、日ごとのお金の貸付、返済の一覧データがあります。 例 A B C D E 1 年  月 日 貸付  返済 2 2008 5 10 10000 3 2008 6 10      8000 4 2008 7 10 20000 5 2008 8 20      7000 ・データの行数は決まっていません。 ・最後の行が「貸付」で終わることもありますし 例のように「入金」で終わることもあります。 ・各データには必ず「年」「月」「日」が入力してあります。 VBAで、A2セルからE5セルを範囲選択するには どのように記述したらいいですか? ちなみに自分で色々と調べてみて Selection.SpecialCells(xlCellTypeConstants, 23).Select としたのですが それだと空白セル(例でいうとE2やD3セル)が選択されず とびとびになってしまいました。 ご教授お願いいたします!

  • エクセル 行数の異なる合計範囲

    例えば   A   B   C    D 1 日付 品名  金額  小計 2 3/1  A商品  500  1800 3     B商品  800 4     C商品  500 5 3/2  B商品  500  500 6 3/3   A商品  300  300 というように次の日付が入るまでの合計(日ごとの集計)をD列に出したい場合に何か関数はありますでしょうか。 ちなみに日付ではなく文字列のパターンもあります。

  • EXCELで空白セルの列を参照して合計を出したい

    A列に月 B列に金額が入ります(添付画像をご参照ください) 1月の合計 10,000+7000=17,000円 は SUMIF関数で出来たのですが A列が空白のセルの合計を出す関数はあるでしょうか? (5,000円+9,000円=14,000円) 総計46,000円から 1月 3月 5月 7月 を引くというやり方以外で 直接 A列が空白セルの場合 B列を合計するというやり方でお願いします

  • エクセル2003のVBAを教えて

    エクセル2003のVBAを教えてください。 次の対象データで、(1)(2)(3)の作業が出来るエクセルVBAを教えて下さい。 (1)(2)(3)個々のVBAでお願いします。 ●対象データ:種類(A列)、文字(B列)、    データの行数:不特定なので、データのある最終行までとします。 ●教えていただきたい項目  (1):種類だけを(C列)に取り出す。  (2):種類の先頭に空白の行を3行入れて、追加の2行目の種類(A列)に文字(B列)を入れる。  (3):種類が5行以上あるときは、5行ごとに空白行を追加する。 ●対象データ 種類(A列)   文字(B列) AA       あああ BB       いいい BB       いい BB       いいい CC       うう CC       うう DD       ええええ DD       ええええ DD       ええええ DD       ええええ DD       ええええ DD       ええええ DD       ええええ ●(1)のVBAの結果(このようになるVBAを教えてください。) (C列) AA BB CC DD ●(2)、(3)のVBAの結果(このようになるVBAを教えてください。) 種類(A列)    文字(B列) あああ AA        あああ いいい BB        いいい BB        いいい BB        いいい うう CC        うう CC        うう ええええ DD        ええええ DD        ええええ DD        ええええ DD        ええええ DD        ええええ DD        ええええ DD        ええええ