Zellen mithilfe eines Makros summieren

Hallo…
ich brauche mal eure hilfe zu einem Problem mit einem
Formel 1-Tippspiel in Excel 03. Und zwar habe ich folgende Tabelle

----- Rennen 1 Rennen 2 Rennen 3 Rennen 4 …
Name1 20 15 15 30
Name2 10 5 25 10
Name3 5 5 30 30
.
.
.

Jetzt möchte ich unter dieser Tabelle eine Rangliste erstellen, wobei man das Rennen (X) ändern kann und das Makro dieses dann ausrechnet:

Punkte nach Rennen X ('in diesem Fall 3)

Name1: 80
Name2: 50
Name3: 70

da ich so gut wie keine erfahrung mit Visual Basic habe, kann ich mir leider nicht weiterhelfen, bitte schreibt aber auch erklärungen zu den Formeln, die ihr mir nennt, damit ich damit was anfangen kann und dann ja (hoffentlich) auch lerne!

Danke schonmal jetzt :wink:

Jetzt möchte ich unter dieser Tabelle eine Rangliste
erstellen, wobei man das Rennen (X) ändern kann und das Makro
dieses dann ausrechnet:

Punkte nach Rennen X ('in diesem Fall 3)

Name1: 80
Name2: 50
Name3: 70

Hi Bery,

benutze beim Zeigen von Tabellen den Pre-Tag, wird unterhalb des Eingabefensters erläutert.

Nach dem 3ten Rennen komme ich auf andere Werte. Alt+F11,Einfügen–Modul, Code reinkopieren, Editor schließen.

Countif (Zählenwenn),Sum(Summe),Match(Vergleich) werden in der normalen Excel-Hilfe erläutert. In Vba haben sie gleichen parameter wie in Excel, aber die Prameter werden in Vba-Schreibweise geschrieben.

Alle anderen Vba-Anweisungen werden in der Vba-Hilfe (F1 im VB-Editor) erläutert

Tabellenblatt: [Mappe2]!Tabelle1
 │ A │ B │ C │ D │ E │
──┼───────┼──────────┼──────────┼──────────┼──────────┤
1 │ Name │ Rennen 1 │ Rennen 2 │ Rennen 3 │ Rennen 4 │
──┼───────┼──────────┼──────────┼──────────┼──────────┤
2 │ Name1 │ 20 │ 15 │ 15 │ 30 │
──┼───────┼──────────┼──────────┼──────────┼──────────┤
3 │ Name2 │ 10 │ 5 │ 25 │ 10 │
──┼───────┼──────────┼──────────┼──────────┼──────────┤
4 │ Name3 │ 5 │ 5 │ 30 │ 30 │
──┼───────┼──────────┼──────────┼──────────┼──────────┤
5 │ │ │ │ │ │
──┼───────┼──────────┼──────────┼──────────┼──────────┤
6 │ Name1 │ 50 │ │ │ │
──┼───────┼──────────┼──────────┼──────────┼──────────┤
7 │ Name2 │ 40 │ │ │ │
──┼───────┼──────────┼──────────┼──────────┼──────────┤
8 │ Name3 │ 40 │ │ │ │
──┴───────┴──────────┴──────────┴──────────┴──────────┘
Benutzte Formeln:
B6: =Pkt(A6;3)
B7: =Pkt(A7;3)
B8: =Pkt(A8;3)

A1:E8
haben das Zahlenformat: Standard

Tabellendarstellung erreicht mit dem Code in FAQ:2363

Option Explicit
'
Function Pkt(Zelle As Range, RennenAnz As Integer)
Dim Zei As Long
Pkt = "Namen nicht gefunden"
If Application.CountIf(Range("A2:A5"), Zelle.Value) \> 0 Then
 Zei = Application.Match(Zelle.Value, Range("A1:A5"), 0)
 Pkt = Application.Sum(Range(Cells(Zei, 2), Cells(Zei, RennenAnz + 1)))
End If
End Function

Danke für die Hilfe und die Beschreibungen…

Nach dem 3ten Rennen komme ich auf andere Werte.

Hast Recht, hab alle 4 zusammengerechnet^^

Alt+F11,Einfügen–Modul, Code reinkopieren, Editor schließen.

Wie öffne ich das Modul denn???

Benutzte Formeln:
B6: =Pkt(A6;3)
B7: =Pkt(A7;3)
B8: =Pkt(A8;3)

A1:E8
haben das Zahlenformat: Standard

Wofür brauch ich die Angaben?

und ich hab noch was vergessen…

angenommen, ich wollte einfach NUR *B2+C2+D2+…* über ein Makro rechnen, was muss ich da machen?
ich wäre sehr dankbar, wenn mir diesmal jemand ein komplettes Makro schreiben würde, aber auch wenn möglich mit Beschreibung

Moin Bery,

Alt+F11,Einfügen–Modul, Code reinkopieren, Editor schließen.

Wie öffne ich das Modul denn???

wie meinst du das?
Nach Alt+F11 und Einfügen–Modul siehst du doch das noch leere Modul vor dir.
Alternativ Alt+F11 und Doppelklick auf das schon bestehende Modul, z.B. Modul1, und du siehst den Inhalt des Moduls.

Benutzte Formeln:
B6: =Pkt(A6;3)
B7: =Pkt(A7;3)
B8: =Pkt(A8;3)

A1:E8
haben das Zahlenformat: Standard

Wofür brauch ich die Angaben?

Gelegentlich sind die Angaben der Zellenformate sehr wichtig.

Die Funktion Pkt ist eine benutzerdefinierte Funktion, die benutzt du wie alle eingebauten Funktionen in Excel, also einfügen mit
Einfügen–Funktion–Benutzerdefiniert…
oder halt direkt in die Zelle schreiben.

Gruß
Reinhard

angenommen, ich wollte einfach NUR *B2+C2+D2+…* über ein
Makro rechnen, was muss ich da machen?
ich wäre sehr dankbar, wenn mir diesmal jemand ein komplettes
Makro schreiben würde, aber auch wenn möglich mit Beschreibung

Moin Bery,

Sub Addiere()
MsgBox Range(„B2“) + Range(„C2“) + Range(„D2“)
End Sub

MsgBox und Range wird in der Hilfe erläutert

Gruß
Reinhard

Moin Bery,

Alt+F11,Einfügen–Modul, Code reinkopieren, Editor schließen.

Wie öffne ich das Modul denn???

wie meinst du das?
Nach Alt+F11 und Einfügen–Modul siehst du doch das noch leere
Modul vor dir.
Alternativ Alt+F11 und Doppelklick auf das schon bestehende
Modul, z.B. Modul1, und du siehst den Inhalt des Moduls.

Guten Morgen…

genau da liegt das Problem! Ich füge das ein, drücke auf „Play“ und es öffnet sich das Fenster Makro, da soll ich eins auswählen, das was ich aber ja eingefügt habe zeigt er nicht an! hab auch schon vorher gespeichert und über Extras>Makro>Ausführen probiert… Das Problem habe ich auch nur bei Private Subs, sonst tut das!!!

Gruß, Bery

Wie öffne ich das Modul denn???

wie meinst du das?
Nach Alt+F11 und Einfügen–Modul siehst du doch das noch leere
Modul vor dir.
Alternativ Alt+F11 und Doppelklick auf das schon bestehende
Modul, z.B. Modul1, und du siehst den Inhalt des Moduls.

genau da liegt das Problem! Ich füge das ein, drücke auf
„Play“ und es öffnet sich das Fenster Makro, da soll ich eins
auswählen, das was ich aber ja eingefügt habe zeigt er nicht
an! hab auch schon vorher gespeichert und über
Extras>Makro>Ausführen probiert… Das Problem habe ich
auch nur bei Private Subs, sonst tut das!!!

Hi Bery,

wo drückst du da auf „play“ ? Englisches Excel? Sah ich zwar noch nie, aber daß da irgendwas play heißen soll als Übersetzung von Ausführen *grübel*

In Extras–Makro–Makro werden dir nur die Makros aufgelistet die keine Parameter haben und nicht Private sind.

Gruß
Reinhard

ich komm nich weiter :frowning:

ich habe imom folgendes Sub:

Sub SortierenStandimÜberblick()

Range(„B5:G28“).Select
Application.CutCopyMode = False
Selection.Sort Key1:=Range(„D5“), Order1:=xlDescending,
Key2:=Range(„B5“) _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1,
MatchCase:= _
False, Orientation:=xlTopToBottom

End Sub

und darunter dann direkt function Pkt(…) usw…
wie baue ich die Function richtig ins Sub richtig ein? wenn ein einfaches Pkt es ttun soll, dann tut die function nicht :?

Gruß

Hi Bery,

ich werd nicht schlau draus was du da treibst oder erreicehn willst.
Jetzt taucht ein Sortiermakro auf, ich weiß jetzt nicht was das mit der Ausgangsanfrage zu tun hast.

Erstell mal eine beispielmappe wo man im ersten Blatt sieht wie die Rohdaten unsortiert vorliegen und im Blatt2 trägst du manuell ein wie dann das Ganze aussehen soll nach Sortierung und Punkteaddierung.
Hochladen mit FAQ:2861 o.ä.

Gruß
Reinhard