Excel VBA質問箱 IV

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

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


3576 / 13644 ツリー ←次へ | 前へ→

【61332】可視セルだけを選択対象にしたい aco 09/4/27(月) 17:07 質問[未読]
【61333】Re:可視セルだけを選択対象にしたい つん 09/4/27(月) 17:26 発言[未読]
【61336】Re:可視セルだけを選択対象にしたい kako 09/4/27(月) 21:02 お礼[未読]

【61332】可視セルだけを選択対象にしたい
質問  aco  - 09/4/27(月) 17:07 -

引用なし
パスワード
   I列の6行目〜最終行までをキーにして、別ファイルにセルの値をコピペするコードを作りました

Sub test()
Dim wb(1 To 2) As Workbook
Dim II As Long, pt As String

With Application
Set wb(1) = .Workbooks("A.xls")
Set wb(2) = .Workbooks("B.xls")

pt = wb(2).Path
If Right(pt, 1) <> .PathSeparator Then pt = pt &.PathSeparator
End With

II = 6

Do
With wb(1).Worksheets("Sheet1").Cells(II, "I")
If .Value = "" Then Exit Do

wb(2).Worksheets("Sheet1").Range("A1").Value = .Value
wb(2).Worksheets("Sheet1").Range("A2").Value =.Offset(0, 1).Value
wb(2).SaveAs pt & .Value & ".xls"
End With
II = II + 1

Loop

wb(2).Close

Erase wb

End Sub

始まりはI列の6行目からなのですが、フィルタをかけるため行番号が飛び飛びになり、上記コードでは思った答えが出ません
フィルタをかけた後の可視セルの状態で上記コードを動かしたいのですが、
うまく修正ができません・・・

どなたかご教授いただけますでしょうか
よろしくお願い致します

【61333】Re:可視セルだけを選択対象にしたい
発言  つん  - 09/4/27(月) 17:26 -

引用なし
パスワード
   こんにちは^^

ちょっとしたアドバイス、というか、これ使ったらいいかもな〜
程度ですが・・・

「SpecialCells メソッド」

で、「可視セル」を取得することができます。

MsgBox Selection.SpecialCells(xlCellTypeVisible).Address

こんな感じにすると、「可視セル」だけのアドレスが取得できます。

どーかなー?

【61336】Re:可視セルだけを選択対象にしたい
お礼  kako  - 09/4/27(月) 21:02 -

引用なし
パスワード
   ありがとうございます。

試してみます。<m(__)m>

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