Page 363 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼最終データの判定について あみやき 02/11/19(火) 9:26 ┣Re:最終データの判定について Jaka 02/11/19(火) 17:13 ┃ ┗Re:最終データの判定について あみやき 02/11/19(火) 17:59 ┃ ┗書き込んでる間に… ゆと 02/11/19(火) 18:11 ┗Re:最終データの判定について ゆと 02/11/19(火) 18:04 ┗Re:最終データの判定について あみやき 02/11/19(火) 19:25 ─────────────────────────────────────── ■題名 : 最終データの判定について ■名前 : あみやき ■日付 : 02/11/19(火) 9:26 -------------------------------------------------------------------------
教えてください。 お願いします。 1つのワークシートの中で、いくつかの項目があるとします。その項目のうち、一項目でも入力されている最後レコードは何件目か判定するにはどうしたらよいのでしょうか? ただし、データを入力する際に特別な記号を最終データに入力していないのを前提でお願いします。 |
▼あみやき さん: >教えてください。 >お願いします。 > >1つのワークシートの中で、いくつかの項目があるとします。その項目のうち、一項目でも入力されている最後レコードは何件目か判定するにはどうしたらよいのでしょうか? >ただし、データを入力する際に特別な記号を最終データに入力していないのを前提でお願いします。 なかなかレスがつかないようですが。 表なども書いてもう少し具体的に説明すると、レスがつきやすくなると思いますが。 現状では、良く解りません。 |
▼Jaka さん: >なかなかレスがつかないようですが。 >表なども書いてもう少し具体的に説明すると、レスがつきやすくなると思いますが。 >現状では、良く解りません。 レスをいただき、ありがとうございます。 例えば、1レコードが(大区分)(中区分)(小区分)から、成り立っているデータがあるとし、ワークシートの中にA列(大区分)、B列(中区分)、C列(小区分)データを格納します。 しかし、全ての区分が入っているとは限りません。 ________________________________ | 行目 | A列 | B列 | C列 | |−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− | 1 | w | s | l | |−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− | 2 | w | | | |−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− | 3 | w | p | p | |−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− | 4 | f | l | | |−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− | 5 | | | | |−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− | : | : | : | : | |−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− | : | : | : | : | |−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− | n | v | | p | |−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− このような場合、例えばABC列で検索する場合、5行目の様に空白行が間にある場合でも、n行目まで検索するためには、検索条件をどう指定すればいいですか?ただし、n行目は実際には何行目かわかりません。 それでいて、ワークシートの最後まで読まなくても、この行が最後の行だと判定できる方法はないでしょうか? お願いしますm(__)m |
ちょっと遅かったみたいですね。 表の形式を確認させていただいたところ、1行目も読み込むのだったのかぁ〜と反省中。 プログラムを作る際のたたき台にでもなったらいいなぁ〜と思うことにでもします。 |
あみやきさんこんばんは。 >1つのワークシートの中で、いくつかの項目があるとします。その項目のうち、一項目でも入力されている最後レコードは何件目か判定するにはどうしたらよいのでしょうか? >ただし、データを入力する際に特別な記号を最終データに入力していないのを前提でお願いします。 とのことですが、ちょっとイメージがわからないのですが、ワークシートの縦にレコードを 続けていく感じでよろしいでしょうか? 一応こんなイメージで作ってみたました。 A B C D E 1 レコード名 項目1 項目2 項目3 項目4 2 入力1 データ 3 入力2 データ 4 入力3 データ A列はレコードの名前を入れる感じにしており、1行目も項目名を入れるために用意した感じに してあります。 Sub Exp() Dim rec&, j& Dim i As Byte, N As Byte N = 4 '項目数を4つと仮定数によって変えてください。 For i = 1 To N rec& = Cells(65536, i + 1).End(xlUp).Row If rec& > j& Then j& = rec& Next i If j& <> 1 Then MsgBox "最終レコードは " & j& - 1 & " 番目です", Buttons:=vbOKOnly, Title:="結果" ' MsgBox "最終レコードは " & j& & " 行目です", Buttons:=vbOKOnly, Title:="結果" Else MsgBox "レコードは未入力です", Buttons:=vbOKOnly + vbExclamation, Title:="警告" End If End Sub と、仮定の上でのプログラムですので、見当はずれかもしれませんが。 レコード件数で値を返すのでなく、行数で値を返すならコメントアウトの部分を変えてください。 |
ゆと さんこんばんわ☆ 分かり易い説明ありがとうございましたm(__)m ほんとありがとうございました。 このサイトは親切な方が多くて、嬉しいです。 私もアドバイスできるレベルになれるようがんばりたいと思います。 m(__)mm(__)mm(__)mm(__)mm(__)mm(__)mm(__)mm(__)mm(__)mm(__)m |