Excel - Highscore dynamisch (mit VBA) erstellen !?
Geizhals » Forum » Programmierung » Excel - Highscore dynamisch (mit VBA) erstellen !? (15 Beiträge, 298 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
...
Re(2): Beispielmappe
28.03.2013, 16:33:06
Sooorrry für die späte Antwort und weiters vielen Danke für deine Mithilfe!

Den Befehl "transpose" kannte ich noch nicht.....

Habe meinen Code in VBA nun etwas in Anlehnung deines Codes angepasst,  und nun ist alles so, wie ich es mir erhofft habe

Mein jetztige Code:

Option Explicit
Dim i, n, letzteReihe As Integer

Dim SWertung, SDummy As Range

Const ersteSpalte As Integer = 5 'Spalte "E"
Const letzteSpalte As Integer = 11 'Spalte "K"

Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, Range("P2:P200")) Is Nothing Then Exit Sub

letzteReihe = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row
i = ActiveCell.Row

Application.ScreenUpdating = False

If letzteReihe < 2 Then Exit Sub

Set SWertung = Range(Cells(i, ersteSpalte), Cells(i, letzteSpalte)) 'Schießergebnisse des Schützen nach 5er-Serien
Set SDummy = Range("Z2:Z9") 'Sortierspalte

Range("Z2:Z8").Value = Application.Transpose(SWertung)
Range("Z9").Value = Application.Sum(Range(Cells(i, 12), Cells(i, 16))) 'Summe der 5er-Schussserie in Sortierspalte eintragen
 
ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Add Key:=SDummy _
        , SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Tabelle1").Sort
        .SetRange SDummy
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
 
SWertung.Value = Application.Transpose(Range("Z2:Z8").Value)

....


Vielleicht gibts noch verbesserungsvorschläge, ansonsten nochmals vielen Dank!

mfg, SunnyHill :-)



   Alles stimmt. Aber auch das Gegenteil.

28.03.2013, 17:00 Uhr - Editiert von SunnyHill, alte Version: hier
Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung