Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[VBA] Zeilen abarbeiten aus mehreren markierten Zellbereichen

106 views
Skip to first unread message

Jörg Eisenträger

unread,
Apr 25, 2013, 1:50:03 PM4/25/13
to
Hallo NG,

in einem Sheet seien mehrere untereinanderliegende, aber nicht
zusammenhängende Zellbereiche selektiert.

Die einzelnen markierten Zellbereiche können sich jeweils über mehrere
Zeilen und Spalten erstrecken.

Ich möchte per VBA nacheinander alle Zeilen abarbeiten, die in den
markierten Zellbereichen liegen.

For each rng in selection erfasst jede _Zelle_ in der Markierung. Ich
suche eine elegante Lösung, um jede _Zeile_ nur einmal zu verarbeiten.

Hat jemand eine Idee?


Gruß
Jörg
--
"One of the best ways to boost your Excel efficiency is also one of the best ways to shoot yourself in the foot."
(Susan Harkins auf www.techrepublic.com/blog/10things/10-mistakes-to-avoid-when-working-with-multiple-worksheets/1961 )

Claus Busch

unread,
Apr 25, 2013, 2:02:34 PM4/25/13
to
Hallo Jörg,

Am Thu, 25 Apr 2013 19:50:03 +0200 schrieb Jörg Eisenträger:

> in einem Sheet seien mehrere untereinanderliegende, aber nicht
> zusammenhängende Zellbereiche selektiert.
>
> Die einzelnen markierten Zellbereiche können sich jeweils über mehrere
> Zeilen und Spalten erstrecken.
>
> Ich möchte per VBA nacheinander alle Zeilen abarbeiten, die in den
> markierten Zellbereichen liegen.

es kommt darauf an, was du abarbeiten willst. Wenn dir die erste Spalte
der Selection dafür ausreicht, könntest du z.B. mit
For i = 1 to 100
selection.cells(i,1)

arbeiten


Mit freundlichen Grüßen
Claus Busch
--
Win XP Prof SP3 / Vista Ultimate SP2
Office 2003 SP3 /2007 Ultimate SP3

Claus Busch

unread,
Apr 25, 2013, 4:02:39 PM4/25/13
to
Hallo J�rg,

Am Thu, 25 Apr 2013 20:02:34 +0200 schrieb Claus Busch:

> For i = 1 to 100
> selection.cells(i,1)

ich wei� ja nicht, was du machen willst, aber du kannst auch die Zeilen
direkt ansprechen:
For Each rngR In Selection.Rows


Mit freundlichen Gr��en

Jörg Eisenträger

unread,
Apr 25, 2013, 6:21:03 PM4/25/13
to

Hallo Claus,

>ich weiß ja nicht, was du machen willst,
Die User sollen eine oder mehrere, auch nicht zusammenhängende Zeilen
markieren, indem sie einfach beliebige Zellen der gewünschten Zeilen
markieren. Ich brauche die Zeilennummern der markierten Zeilen, um dann
aus der Zeile ganz bestimmte Werte in bekannten Spalten auszulesen.

>aber du kannst auch die Zeilen
>direkt ansprechen:
>For Each rngR In Selection.Rows
Genau nach so etwas hatte ich gesucht.

Es müsste dann also so gehen:
For Each rngR In Selection.Rows
AktuelleZeilenNr = rngR.row

Werde ich morgen ausprobieren.
Vielen Dank.
0 new messages