Excel VBA質問箱 IV

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

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


3328 / 76735 ←次へ | 前へ→

【79038】Re:等間隔の行数取得
発言  β  - 17/4/18(火) 11:12 -

引用なし
パスワード
   ▼boss さん:

参考になるかどうか K13 から K列データ最終セルまでの間の 
最終 と あああ のセルを取得するサンプルです。

等間隔 というところは無視しています。
ここで、取得される g や a の領域を相手に、好きな処理をどうぞ。
a は セルの集合体ですから、その中から1つずつ取り出して処理するのもよし
処理要件によっては a に対して一括処理もできるでしょう。

Sub Sample()
  Dim sh1 As Worksheet
  Dim g As Range
  Dim c As Range
  Dim f As Range
  Dim a As Range
  Dim ttlrow As Long
  Dim r As Range
  
  Set sh1 = Sheets("Sheet1")
  Set r = sh1.Range("K13", sh1.Range("K" & Rows.Count).End(xlUp))
  
  Set g = r.Find(What:="最終", LookAt:=xlWhole, SearchDirection:=xlPrevious)
  If g Is Nothing Then
    MsgBox "最終の行がありません" & vbLf & "処理を打ち切ります"
    Exit Sub
  End If
  
  ttlrow = g.Row
  
  MsgBox "最終は " & ttlrow & "行目にありましたよ"
  
  Set c = r.Find(What:="あああ", LookAt:=xlWhole, After:=r.Cells(r.Count))
  
  If c Is Nothing Then
    MsgBox "あああ の行がありません" & vbLf & "処理を打ち切ります"
    Exit Sub
  End If
  
  Set f = c
  
  Do
    If a Is Nothing Then
      Set a = c
    Else
      Set a = Union(a, c)
    End If
    
    Set c = r.FindNext(c)
    
  Loop While c.Address <> f.Address
  
  MsgBox "あああ は 以下に存在しています" & vbLf & a.Address(External:=True)
  
End Sub

0 hits

【79007】等間隔の行数取得 boss 17/4/13(木) 19:43 質問[未読]
【79008】Re:等間隔の行数取得 γ 17/4/13(木) 21:02 発言[未読]
【79011】Re:等間隔の行数取得 boss 17/4/14(金) 12:42 発言[未読]
【79024】Re:等間隔の行数取得 boss 17/4/17(月) 16:17 質問[未読]
【79031】Re:等間隔の行数取得 γ 17/4/17(月) 21:25 発言[未読]
【79033】Re:等間隔の行数取得 γ 17/4/18(火) 7:38 発言[未読]
【79036】Re:等間隔の行数取得 boss 17/4/18(火) 10:20 発言[未読]
【79037】Re:等間隔の行数取得 β 17/4/18(火) 10:56 発言[未読]
【79038】Re:等間隔の行数取得 β 17/4/18(火) 11:12 発言[未読]
【79039】Re:等間隔の行数取得 boss 17/4/18(火) 11:46 発言[未読]
【79040】Re:等間隔の行数取得 β 17/4/18(火) 13:37 発言[未読]
【79041】Re:等間隔の行数取得 boss 17/4/18(火) 18:50 お礼[未読]
【79035】Re:等間隔の行数取得 β 17/4/18(火) 9:33 発言[未読]

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