Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
912to916
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
912to916
912to916
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA: Reihen in Auswahlbereich

VBA: Reihen in Auswahlbereich
08.10.2007 10:11:18
Strauß
Hallo zusammen,
mein erster Beitrag hier im Forum - ich hoffe ich mache keine "Fehler" und mich gleich unbeliebt.
Ich stehe vor dem Problem, dass ich per VBA den User Zeilen einfügen lassen. Der User hat z.B. folgenden Bereich markiert: "A1:B3", "C4:C6"
Nun möchte ich hier Zeilen einfügen:
Selection.EntireRow.insert Shift:=xldown
>>
Das klappt auch soweit.
Ich möchte nun aber noch in den Reihen, die in dem Auswahlbereich liegen die z.B. die Farbe ändern.
Leider komme ich mit "Selection.Areas.count" nicht dahin wo ich möchte.
Gibt es eine Möglichkeit nur die Reihen aus dem markierten Bereich auszulesen?
Danke schon mal für die Antworten.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Reicht das: Selection.interior.colorindex=6 '? _oT
08.10.2007 12:34:09
NoNet
_oT = ohne Text

AW: Reicht das: Selection.interior.colorindex=6 '? _oT
09.10.2007 11:10:52
Oliver
Hallo Nonet,
das reicht leider nicht, da ich dann die ganze Reihe auswählen muss. Ich habe aber eine ganz passable Lösung gefunden:

Sub Zeilen_auslesen()
'*******Variablen-Deklaration*******
Dim r_akt_arr() As Long, r_akt as long '***
Dim i1 As Byte, i2 As Byte '***
'*******Zeilen auslesen*******
ReDim Preserve r_akt_arr(0) '***
r_akt_arr(0) = Selection.Areas(1).Cells(1).Row '***
For i1 = 1 To Selection.Areas.Count
For i2 = 1 To Selection.Areas(i1).Cells.Count
If IsError(Application.Match(Selection.Areas(i1).Cells(i2).Row, r_akt_arr, 0)) = True Then
ReDim Preserve r_akt_arr(UBound(r_akt_arr) + 1) '***
r_akt_arr(UBound(r_akt_arr)) = Selection.Areas(i1).Cells(i2).Row '***
End If
Next i2
Next i1
'*******Zeilen sortieren*******
If UBound(r_akt_arr) >= 2 Then
For i1 = 0 To UBound(r_akt_arr)
For i2 = i1 To UBound(r_akt_arr)
If r_akt_arr(i1) 


>>
Gruß,
Oliver.

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige