• ベストアンサー

文字の場合でもA列の最終行の行番号を取得するには

A列の最終行の行番号を、 =MATCH(10^10,A:A) を使えば取得できますが、 これはA列にの最終行が数値の時だけで、文字列が最終行の場合は無視されるようです。 文字列でも取得する方法はありますか? 10^10の部分を変更すればいいと思いますが、どうすればいいですか?

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

No.2です! たびたびごめんなさい。 >最終行の行番号を・・・ とありますので、前回は余計なお世話を焼いているみたいですね。 行番号だけなら =MAX(IF(A1:A1000<>"",ROW(A1:A1000))) (前回同様、配列数式です) としてください。 ※ 数値でも文字列でも問題ありません。m(_ _)m

ctrxykjtmr
質問者

お礼

ありがとうございました。

その他の回答 (3)

回答No.4

=max(index(row(a1:a3000)-9^9*(a1:a3000=""),)) とも。

ctrxykjtmr
質問者

お礼

ありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんにちは! 一例です。 A列の検索とします。 表示したいセルに =INDEX(A1:A1000,MAX(IF(A1:A1000<>"",ROW(A1:A1000)))) これは配列数式になってしまいますので、Shift+Ctrl+Enterで確定! ※ 数式は1000行目まで対応できるようにしていますが、 配列数式はPCにかなりの負担を掛けますので、データ量が極端に多い場合は 別の方法をおススメします。m(_ _)m

ctrxykjtmr
質問者

お礼

ありがとうございました。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

次の式で求めることができます。 =MATCH("ー",A:A) ーは半角英数モードではいけません。一旦式を確定してから数式バー上で-をひらがな入力モードの状態でーと変換して使用するのがよいでしょう。

ctrxykjtmr
質問者

お礼

ありがとうございました。

関連するQ&A

  • 何列の何行目が最終行なのか取得するコードはありますでしょうか?

      A列  B列  C列 1  ○   ○ 2        ○ 3               ○ これは最終行が3行目と言うのがぱっと見でわかりますが もっと列も行も多い場合、 シート内の何列の何行目が最終行なのか取得するコードはありますでしょうか? Cells(65536, ?).End(xlUp).Row を行ないたいのですが 毎回何列の行が一番下かを取得する方法があれば教えてください。 よろしくお願い致します。

  • エクセル:データが入った最終行の行番号の取得

    お世話になります。 A列にいろいろデータが入っているとして、データが入っている一番下(最終行)の行番号をB1のセルに表示させるにはどういう計算式で出来るでしょうか? A列のデータは数値だけでなく文字列も含みます。また途中空白セルもあります。 A1~A20にデータが入っているときはB1に20と表示させる。 よろしくお願いします。

  • 任意の最終行番号を取得し他列でのコピーに利用したい

    お世話になります。 任意の最終行番号を取得し、他の列でコピー時にその行番号までコピーしたいと考えております。 添付の例では、12行目が最終行となっていますが、この12行を得て「E列」に新たに行を追加し 「D列」の依頼年月の下二桁の月の部分だけを抽出し、任意の最終行(この場合12行目)までコピーしたい。 4行目にブランク行があると3行目までしかコピーせず困っております。 賢者の皆様、お知恵をお貸し下さい。 よろしくお願いいたします。

  • 最終行に合計(最終行が列によって異なる場合)

    エクセルVBAに於いて質問させて頂きます。 タイトルにも書かせていただきましたが、 A列に行数可変のデータ(文字列)があり、 B列に行数可変のデータ(数字)があり、 A列の行数>=B列の行数の条件とき、 A列の最終行+2の位置のA列に文字で合計 A列の最終行+2の位置のB列にsumを表示する場合、 どのようにすれば出来ますでしょうか。 A列の最終行+2の位置のA列に文字で合計は With Range("A3") .End(xlDown).Offset(2, 0).Formula = "合計" End With でいけると思うのですが、 A列の最終行+2の位置のB列にsumを表示する場合どのようにすればいいのかわかりません。 ご教授のほどお願い致します。

  • EXCEL-VBAでワークシートのデータがはいっている最終の行番号の取得

    ExcelVBAは不得意のものです。 ワークシートのA列にデータが入っているのですが、10行目までの時もあれば20行目までデータが入っている場合もあります。データが入っている最終行の行番号を取得したいのですがどうしたら良いのでしょう。 何をするかというと、その番号を取得してループ処理をしたいのです。For i=1 To 最終行の行番号みたいに 多分EOFなんて指定じゃないですよね

  • VBAで最終行を取得する方法

    最終行を取得する方法について教えていただきたいです。 例えば以下のようなデータがあった場合 (A列~D列、3行までデータがある状態) -------------------------------- 田中 24歳 生命保険 営業 山口 47歳 銀行   営業 大野 36歳 IT    SE -------------------------------- ここで最終行を取得する際に、 Range("A1").End(xlDown).Rowをすれば取得できました。 しかしデータが以下のような場合 (A列が空白) -------------------------------- 田中 24歳 生命保険 営業    47歳 銀行   営業    36歳 IT    SE -------------------------------- この場合に上記と同じ取得方法をすると、オーバーフローになります。 そこで他の取得方法を調べたのですが、 ActiveSheet.UsedRange.Rowを試したところ、最終行として取得できたのは「1」でした。 A列が空白の状態でも、今回の場合だと「3」という最終行を取得するにはどうすれば良いでしょうか。

  • 列最終行を取得し別列に貼付け

    VBAでA列最終行を取得しB列にその行の値を貼付けることができますか宜しくお願いします。

  • エクセルの関数で最終行の文字を取得したい

    エクセルの関数で、シート2のA1に、シート1のA列の最終行に入力されてる文字を取得したいのですが、どのような関数になるでしょうか?

  • EXCEL VBAによる列番号の取得

    a行のx列まである色で塗られている. 色の塗られている範囲で,最終列にあたるセルの 列番号を取得したい. このような場合,どのようにVBAを記述したらよいのでしょうか? どうぞよろしくお願いいたします.

  • EXCELの行番号取得について

    A列に●がランダムに入っている状態で、1番目に●が入っている行番号、2番目に●が入っている行番号、3番目・4番目・・・の行番号を関数で取得したいのですが、良い方法はありますでしょうか。ご教授下さい。(バージョンはEXCEL2016です) よろしくお願いします。   A列    B列 1        4  ← 1番目の●の行番号 2        6  ← 2番目の●の行番号 3        9  ← 3番目の●の行番号 4  ● 5 6  ● 7 8 9  ● 

専門家に質問してみよう