• ベストアンサー

エクセルでの範囲選択

お世話になります。 列の合計を出すときの範囲を選択する場合 =SUM(F9:F●) =SUM(G9:G●)  F9,G9は不変。 ●にはF列 または G列のうち数値が入力されているセルで、一番下にあるものの 行番号をいれたい。 例えば F20 と G22 に数値が入っていたら ●=22 としたい。 (F21以下のF列と、G23以下のG列はすべて空白の場合) この場合はどうすればいいのでしょうか?

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

  • ベストアンサー
  • comv
  • ベストアンサー率52% (322/612)
回答No.1

こんばんは! ●を求める式 =MAX(MATCH(MAX(F:G)+1,F:F,1),MATCH(MAX(F:G)+1,G:G,1)) 例えば、上記の式をH1に記載した場合 H2に =SUM(INDIRECT("F9:F"&H1)) H3に =SUM(INDIRECT("G9:G"&H1)) 結果が9より小さい(9行目以降に数値がない)場合がある時は ●を求める式を =MAX(MATCH(MAX(F:G)+1,F:F,1),MATCH(MAX(F:G)+1,G:G,1),9) としておいた方が無難です。 注:この式その数値を使った=SUM()式は、FまたはG列に   記載すると循環参照となりますのでそれ以外の列に   記載する必要があります。

HGK
質問者

お礼

ありがとうございます。ばっちりでした。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 関数の選択範囲の指定方法

    例えば、sum関数で、かなり広い範囲のセルの数字の合計を計算しようとしているとします。 この時のセル範囲の指定方法についての質問です。 関数ではなくて、通常のセル選択の場合、「Ctrl」キーと「Shift」キーを押しながら、矢印キーを押すと、文字が入力されている範囲の端から端までが選択できます。 このような方法を関数のセル廃位の選択でもやってみたいと考えています。 なお、計算するデータは空白行、または、空白列で区切られているとします。 よろしくお願いします。

  • エクセル2003VBAで選択範囲

    いつもお世話になっています。 エクセル2003を使用しております。下記を関数又はVBAの組み方・構文を教えて下さい。 (1)E列には、「1」と「.」と「空白」が入っています(「1」が入ってないケースもあります)が、「1」を検索します。もし「1」が無ければ、J列を同様に検索します。(中身はE列と同じです) (2)「1」が入っているセルから見て、「行」の±10の範囲内を選択し、別シートにコピーする。 例1. 1が入っているセルが、「E15」とします。 この場合、コピーしたい範囲は、5行目全部~25行目全部です。 例2. 1が入っているセルが、「E17」とします。 この場合、コピーしたい範囲は、7行目全部~27行目全部です。 分かりにくいかもしれませんが、よろしくお願いします。

  • エクセルの選択範囲の同期について

    エクセルでの質問です。 A1のセルでC列を合計し、「=SUM(C1:C5)」 B1のセルでいくつカウントしたのかを知りたい場合、どう書けばいいでしょうか。(この場合B1のセルには「5」とあらわれてほしいです) 「=count(C1:C5)」と書ければ楽なのですが、A1のセルに数値が入っていなかったり、範囲の書き換えなどがよくあるのでB1には自動でカウントしてほしいのです。 よろしくお願いします

  • エクセル2010 繰り返しマクロ

    (1)g列の空白の最上行に =SUMPRODUCT(min((a:a>=f2)*(a:a<f2+730)*e:e)) と入力。 そのセルをコピーし、同じセルに値を上書き貼り付け ↓ (2)a列に(1)のセルの左隣のセル以下の数値がある行の、b列を削除 (画像の場合、(1)のセルがg1の場合、b2,b3を削除する) というのを、f列に数値がある行だけ繰り返すマクロの構文を教えてください。 大変お手数おかけいたしますが、どうぞよろしくお願いします。

  • Excelで、セル範囲(自分の1行下:空白セルの上)、を求めることできますか?

    Excelで、セル範囲(自分の1行下:空白セルの上)、を求めることできますか? A列 ────── 2004年   3 ← =sum(A2:A3) 2004/11  1 2004/12  2        ← 空行 2005年  5 ← =sum(A6:A8) 2005/1  3 2005/2  2 2005/3  0        ← 空行 sum()の引数(合計範囲)を求めることできますか? 手作業で"A6:A8"等入力していかないとできないのでしょうか?

  • (エクセル)数値だけ合計したい

    複数のセルに入力されている数値だけを抽出し、合計したいと思います。   A     B    C    D    E    F    G 1 合計金額 金額1  金額1理由 金額2  金額2理由 金額3  金額3理由 2      1000円   菓子  3 1500円  1000円   菓子   500円   飲料 4 1520円  1000円   菓子   500円   飲料   20円   消費税 以上のようにA列に合計金額を計算させる数式を考えています。 (ルール) ・B列とC列、D列とE列、F列とG列はセットです。例えば、B列には入力されているが、C列は空白ということはない ・B列とC列→D列とE列→F列とG列の順に入力されていく ・2行目、3行目のように、常に金額が3つとも入力されているとは限らない ・金額が入力されているB列、D列、F列には、「○○円」と「円」も一緒に入力されている (やりたいこと) A列に合計金額を反映させないのですが、以下のように規制したいです (1)2行目のように、金額が1つだけの場合(B列とC列しか入力されていない場合)は、合計金額は空白セルにする (2)3行目、4行目のように、金額が2つ以上の場合(D列とE列や、F列とG列にも入力されている場合)は、合計金額を反映させる (3)合計金額は「○○円」と「円」も一緒に反映させる (考えたこと) B列の金額とB列+D列+F列の合計を比較し、同じならA列は空白、違う場合はB列+D列+F列の合計をA列に反映させるようIF関数を使えばいいのではないか、と考えました。 そこで、まずB列+D列+F列の合計を出す関数を作ってみたのですが、うまくいきませんでした。 =SUM(SUBSTITUTE(B2,"円","")*1,SUBSTITUTE(D2,"円","")*1,SUBSTITUTE(F2,"円","")*1) とすると、金額が3つとも入力されていればいいですが、一つでも空白セルがあると、#VALUE!とエラーになってしまいます。 SUMPRODUCTを使用してできるかと思いましたが、同じ結果でした。 どうすれば、思っているようになるのでしょうか。 ご存知の方がいましたら教えてください。 よろしくお願いします。

  • エクセルVBAでセル範囲選択→並べ替え

    大きなデータを選択する場合でA列には空白がない場合、 Range("A1").CurrentRegion.Select でいいと思うのですが、このデータを並べ替えようとするとき、1行から4行めには別の文字列がはいっており、5行目以下がデータであるとき、 Range("A1").CurrentRegion.Offset(4).Selectで下にさげると、最終選択範囲も下がってしまいます。 最終の範囲を変えず、開始位置を5行目にかえるにはどうすればよいのでしょうか?

  • エクセルの空白セルの選択

    こんにちは いつもお世話になっています。  エクセルの空白セルの選択について教えてください。 A列、B列にデータがあります。それぞれの列で空白セルがありますが、同じ行で両列ともに空白のセルだけを選択する方法を教えてください。  単に「ジャンプ」から空白セルを選択すると片方にデータがある行のセルも選択してしまいます。片方にデータのある行は残し、両列ともに空白の行を削除したのです。  よろしくお願いします。

  • 範囲名の効率的な付け方は?

    添付図に示すデータを考えます。(Excel 2013) 各列の2行目以下のデータリストに、該当列の1行目に示す文字列で名前を付けたいとき、 1.範囲 A1:D15 を選択 2.[数式]→[定義された名前 <選択範囲から作成>]を実行 3.“上端行”だけにチェックを残して、[OK]をクリック としているのですが、此れでは不都合なときがあります。 例えば、 1.範囲 F1:f4 を選択 2.[データ]→[データツール <データの入力規則>]を実行 3.[設定]タブにおいて  ̄ ̄3.1.[入力値の種類]で“リスト”を選択  ̄ ̄3.2.[元の値]ボックス内に式 =$A$1:$D$1 を入力  ̄ ̄3.3.[OK]をクリック 4.範囲 G1:G4 を選択 5.ステップ2~3に同じ。ただし、3.2.で入力する式を =INDIRECT(F1) とする 6.セル F1~F4 の各セルを選択したときに表示される右端の▼ボックスをクリックして、  ̄ ̄上から、名前、項2、項3、項1 を選択 7.セル G1 を選択すると、セル A2 以降の名前がリスト表示されます。此処で「須田」  ̄ ̄を選ぶことにします 8.同様に、セル G2 では上から4番目の 213 を 4.次にセル G3、G4 で同じことをしようとすると「あれ?」と戸惑います この戸惑いの原因は、ステップ1の範囲を空白セルも含めて仕舞ったからです。例えば、範囲名「項1」「項3」の対象範囲をそれぞれ $B$2:$B$7、$D$2:$D$4 にしておけば問題ないことが分かっています。 でも、名前を付ける範囲は纏まって配置されているのに、一々範囲指定し直すのは面倒です。 一度の操作で、データの存在する長さだけ1行目の名前を付けるにはどうしたらよろしいでしょうか?

  • 複数行の最下行の範囲選択

    こんにちは、マクロ初心者です。    A  B  C  D  E  F  G  H  I 1  あ  あ  あ        あ  あ     あ 2  あ  あ  あ        あ  あ     あ 3  あ     あ                 あ 4        あ                 あ 5        あ                 あ 6        あ                 あ 7        あ                 あ 8        あ                 あ 9        あ 10 上記のような表があるとき セル"A"列から"I"列までの最下行にあたる行を検索し、 更に最下行までの範囲をコピーして、別シートにコピーさせたいのです。 (上記の例だと、セル"A1"~"I9"の範囲をコピーする) Range("A1", Range("I1").End(xlDown)).Select Selection.Offset(0, 0).Select 上記のコードでできると思ったのですが、なぜか不必要な範囲まで選択されてしまいます。 (下方向に数行余計に選択されてしまう) これではダメなのでしょうか? ちなみに、数式などは入っておらず、入力されていないセルは全て空白です。 A列だけの最下行を選択するというのは簡単に出来たのですが、このように複数の範囲を 選択する場合は、どのようにコードを書くべきでしょうか。 マクロのスキルが無い為困っています。 アドバイスをよろしくお願いいたします。

このQ&Aのポイント
  • 登録エラー06が発生し、MFC-J6580CDWでトク刷るポイントの登録ができません。詳細な事象やエラーメッセージは何も表示されておらず、画面にエラーが表示されるだけで先に進めません。
  • Windows環境で無線LAN接続を使用しています。関連するソフトやアプリは特にありません。電話回線はIP電話を使用しています。この環境下で登録エラー06が発生し、トク刷るポイントの登録ができない状況です。
  • ブラザー製品のMFC-J6580CDWでトク刷るポイントの登録をしようとすると、登録エラー06が発生し、画面上にエラーメッセージが表示されます。エラーメッセージに関する詳細な情報は提供されず、登録ができない状況です。OSはWindowsで、無線LAN接続を使用し、電話回線はIP電話を使用しています。
回答を見る

専門家に質問してみよう