Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


4588 / 13646 ツリー ←次へ | 前へ→

【55745】次の可視セルの行番号を知る方法 やまもと 08/5/18(日) 14:47 質問[未読]
【55747】Re:次の可視セルの行番号を知る方法 kanabun 08/5/18(日) 14:55 発言[未読]
【55754】Re:次の可視セルの行番号を知る方法 やまもと 08/5/18(日) 16:45 質問[未読]
【55758】Re:次の可視セルの行番号を知る方法 kanabun 08/5/18(日) 17:42 発言[未読]
【55798】Re:次の可視セルの行番号を知る方法 やまもと 08/5/20(火) 0:46 お礼[未読]

【55745】次の可視セルの行番号を知る方法
質問  やまもと  - 08/5/18(日) 14:47 -

引用なし
パスワード
   フィルターなどを掛けていて行が隠れている場合、次の可視セルの行番号を効率的に取得する方法はないでしょうか。
xlCellTypeVisibleを使えば何とかできそうな気はするんですが・・・。
1行1行確認していけばできますが、それよりも効率的な方法をご存知であれば教えて下さい。

【55747】Re:次の可視セルの行番号を知る方法
発言  kanabun  - 08/5/18(日) 14:55 -

引用なし
パスワード
   ▼やまもと さん:
こんにちは。

> フィルターなどを掛けていて行が隠れている場合、
> 次の可視セルの行番号を効率的に取得する方法はないでしょうか。

可視行の行番号を知りたいという質問はよくあるのですが、
行番号を知って、それを何に使うのでしょうか?

可視行だけ 抽出Copy したり、
可視行だけ 値を代入したりは 行番号を知らなくてもできます。

【55754】Re:次の可視セルの行番号を知る方法
質問  やまもと  - 08/5/18(日) 16:45 -

引用なし
パスワード
   ▼kanabun さん:
>▼やまもと さん:
>こんにちは。
>
>> フィルターなどを掛けていて行が隠れている場合、
>> 次の可視セルの行番号を効率的に取得する方法はないでしょうか。
>
>可視行の行番号を知りたいという質問はよくあるのですが、
>行番号を知って、それを何に使うのでしょうか?
>
>可視行だけ 抽出Copy したり、
>可視行だけ 値を代入したりは 行番号を知らなくてもできます。
回答ありがとうございます。

データが横に多いため、可視のデータだけを取り出して別のシートに表示させていき、1行ずつチェックしていきたいと考えています。
またその行番号を元に別のファイルのデータをindirectで引っ張ってきているので、すぐに行番号が分かるとありがたいのです。

【55758】Re:次の可視セルの行番号を知る方法
発言  kanabun  - 08/5/18(日) 17:42 -

引用なし
パスワード
   ▼やまもと さん:
>データが横に多いため、可視のデータだけを取り出して別のシートに表示させていき、1行ずつチェックしていきたいと考えています。
>またその行番号を元に別のファイルのデータをindirectで引っ張ってきているので、すぐに行番号が分かるとありがたいのです。

フィルタ範囲のとなりの空いている列に 行番号を書き込んでから
フィルタ範囲をCOPYしたらどうでしょう?

(例)
 Const col = 100
 '100列あるとします
 With Sheets(1).Range("A1").CurrentRegion.Resize(, col)
   .AutoFilter 2, "=C"
   With .Columns(col + 1).Cells
     .Value = "=ROW()"
   End With
   .Resize(, col + 1).Copy Sheets(2).Range("A1")
   .AutoFilter
 End With

【55798】Re:次の可視セルの行番号を知る方法
お礼  やまもと  - 08/5/20(火) 0:46 -

引用なし
パスワード
   ▼kanabun さん:
>▼やまもと さん:
>>データが横に多いため、可視のデータだけを取り出して別のシートに表示させていき、1行ずつチェックしていきたいと考えています。
>>またその行番号を元に別のファイルのデータをindirectで引っ張ってきているので、すぐに行番号が分かるとありがたいのです。
>
>フィルタ範囲のとなりの空いている列に 行番号を書き込んでから
>フィルタ範囲をCOPYしたらどうでしょう?
>
>(例)
> Const col = 100
> '100列あるとします
> With Sheets(1).Range("A1").CurrentRegion.Resize(, col)
>   .AutoFilter 2, "=C"
>   With .Columns(col + 1).Cells
>     .Value = "=ROW()"
>   End With
>   .Resize(, col + 1).Copy Sheets(2).Range("A1")
>   .AutoFilter
> End With

ありがとうございました。
頂いたものを参考にしてひとまず希望に近いものができました。また何かありましたら宜しくお願いします。

4588 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free