2016-04-01 24 views
1

条件付き書式設定を含む場合、いくつかのセルを選択するVBAマクロがあります。これらのセルはすべて、各シート上の同じ場所にあるわけではありません。 私が探しているのは、アクティブセルを範囲内の次のセルにスキップするコマンドです。 ハイライトされた範囲でTABを押すのと同じですVBAを使用して、EXCELで選択したセルをスキップする方法

現在のところ、私は以下のようにsendkeysを使用していますが、これは乱雑ですし、vbaコードの次の行にタブスペースを追加し続けます( "____Loop")

ActiveCell.SpecialCells(xlCellTypeAllFormatConditions).Select 

Do Until Recount = Count 
Recount = Recount + 1 
Application.SendKeys "{TAB}", True 
    Loop 

何かアドバイスは

+0

カウントと再カウントとは何ですか? –

答えて

0

をいただければ幸いここでどのようにあなたができる範囲をループです:それはどのような狙いは明らかではありません

Dim rng As Range, c As Range 

Set rng = ActiveSheet.UsedRange.SpecialCells(xlCellTypeAllFormatConditions) 
For Each c In rng 
    c.Select 
Next c 

あなたのコードのですが。 CountRecountとは何ですか?

+0

これは完全に動作します。私は、同じスクリプト内の複数の段階でc.Select関数を使用することができ、非常に便利であることを認識しました。 おかげでティム – Sam

0

は値1、2及び3と

Sub loopThroughCells() 
    Dim r as Range 
    Set r = Application.Selection 
    For i = 0 to r.length 
     MsgBox(r.value) 
    Next i 
End Sub 

と仮定三つのセルが選択され、それらを介して選択されたセルとループのリストを取得します。上記のマクロを実行すると、値1、2、3のメッセージボックスが表示されます。

0

タブボタンのコマンドだけが必要な場合は、オフセットを適用する行数(オフセット数、オフセットする列数)を使用します。だから、あなたがすでに持っているように見えるセルを見つける方法を知ったら、ちょうどput.offset(0,1)を使って一つのセルを右に動かすことができます。

+0

以下ティムのコードを使用する:範囲として暗いRNG、C c.offset(0,1) 次のC – jf12345

+0

こんにちはRNG内の各Cについては レンジ セットRNG = ActiveSheet.UsedRange.SpecialCells(xlCellTypeAllFormatConditions)としてJF、私は残念ながらオフセット機能を知っていました。私が繰り返したいセルは常に同じ位置にあるとは限りません。したがって、オフセット関数は機能しません – Sam

関連する問題