Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
744to748
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
744to748
744to748
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Macro ändern (zum 2. leider-> Heiko S.???)

Macro ändern (zum 2. leider-> Heiko S.?)
17.03.2006 23:43:25
Rene
Moin zusammen,
Kannst du (Heiko S.) aber auch die anderen mir bitte sagen wie ich bei deinem Code noch zwei Spalten einfügen kann?
Ich wollte gerne deinen Code um zwei Spalten erweitern.Also der Copy Bereich würde jetzt bis G gehen. Dieses konnte ich auch noch so halbwegs verfolgen nur dann wenn es die Spalten dreht fügt es mir nicht die neuen Spalten mit ein.Wie es dann in zB. "I2" eingetragen wird habe ich auch rausbekommen. Aber eben der entscheidende Rest fehlt mir noch.Kannst du oder jemand anders mir bitte noch mal weiterhelfen?
Hier noch mal der letzte Code:

Sub Auswerten4()
Dim strTeam As String, strSheetName As String, strStartSheet As String
Dim lngLastRow As Long, lngI As Long, lngN As Long, lngTeamErsteZeile As Long
Dim intTeamCounter As Integer, intSpalte As Integer, intAusW As Integer
' Programm starten wenn die Ausgangstabelle auch das aktive Tabellenblatt ist !!!
strStartSheet = ActiveSheet.Name
ActiveSheet.UsedRange.Copy
ActiveWorkbook.Worksheets.Add After:=Sheets(Sheets.Count)
strSheetName = ActiveSheet.Name
ActiveSheet.Paste Destination:=ActiveSheet.Range("A1")
lngTeamErsteZeile = 2
Application.ScreenUpdating = False
With Worksheets(strSheetName)
lngLastRow = .Cells(Rows.Count, 1).End(xlUp).Row
.Range(Cells(1, 1), Cells(lngLastRow, 5)).Sort _
Key1:=Range("A1"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
lngN = lngLastRow + 5
strTeam = UCase(.Cells(2, 1))
For lngI = 3 To lngLastRow + 1
If strTeam <> UCase(.Cells(lngI, 1)) Then
.Range(Cells(lngTeamErsteZeile, 1), Cells(lngI - 1, 5)).Sort _
Key1:=Range("E" & lngTeamErsteZeile), Order1:=xlDescending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
.Cells(lngN, 1) = .Cells(lngI - 1, 1)
intSpalte = 2
If lngI - lngTeamErsteZeile < 4 Then
intAusW = lngI - lngTeamErsteZeile - 1
Else
intAusW = 3
End If
For intTeamCounter = lngTeamErsteZeile To lngTeamErsteZeile + intAusW
.Range(Cells(intTeamCounter, 2), Cells(intTeamCounter, 5)).Copy _
Destination:=.Cells(lngN, intSpalte)
intSpalte = intSpalte + 4
Next intTeamCounter
lngN = lngN + 1
lngTeamErsteZeile = lngI
End If
strTeam = UCase(.Cells(lngI, 1))
Next lngI
Rows("1:" & lngLastRow + 4).Delete
.UsedRange.Copy Destination:=Worksheets(strStartSheet).Range("H1")
Application.DisplayAlerts = False
Worksheets(strSheetName).Delete
Worksheets(strStartSheet).Activate
End With
With Application
.ScreenUpdating = True
.CutCopyMode = False
.DisplayAlerts = True
End With
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Hat sich erledigt :) :)
18.03.2006 09:58:19
Rene
Moin zusammen,
Hurra habe es selber rausbekommen.
Grüße aus dem Schaumburger Land
Rene
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige