Excel上にデータを設定しました。列Bから始まり、B3から連続したデータがあり、周期的に大きくなる(今日はB114ですが、明日はB116にデータが拡張される可能性があります)。連続したセルBのデータは決して削除されません。列Bの連続するデータの行ごとに、列B-AGの行も選択します。ただし、Bの後の行には連続データがありません。例えばExcel VBAで変数範囲内の空白でないセルをすべて選択する
:B120へのB3からの連続したデータがあります。範囲B3:AG120を選択したいと思います。私はVBAでこれを行うために書かれている
コードが機能していません。これはB120(この例では)で正しく停止しますが、C-AG列の不連続データに達すると、120を超える行が選択されます。このコードが機能しない理由は何もありません。とても有難い!レコードの
、シート内のほぼすべてのセル内の数式があります。しかし、一部の数式だけがセルにデータを取り込みます。私はそれが私の範囲内にある場合、データが入力されているかどうかにかかわらず、すべてのセルを選択したいと思います。そうでなければ、私はそれを選択したくない。たとえば、B120を過ぎると、空のセルに式が入っています。私はそれらを私の範囲に含めることは望ましくない。しかし、D40に空のセルがある場合(B3とAG120の間にある)、私はそれを選択に含めたいと思います。
Dim LR As Long, cell As Range, rng As Range
With Sheets("Sortable(2)")
LR = .Range("B" & Rows.Count).End(xlUp).Row
For Each cell In .Range("B3:B" & LR)
If cell.Value <> "" Then
If rng Is Nothing Then
Set rng = cell
Else
Set rng = Union(rng, cell)
End If
End If
Next cell
rng.Select
End With
'.Range( "B" &Rows.Count).END(xlUp).Row'は、数式を用いて細胞をカウントします。 – findwindow
はい、わかります。だから、空であれば範囲に追加しないif文が続かれます – Megan
cell.Value <> "" cell.Value <> ""のinseadを使ってみましたか? – Absinthe