Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Daten übertragen

Forumthread: Daten übertragen

Daten übertragen
12.04.2023 16:42:46
Udo Pacher

Hallo

Wir spielen übers Jahr sehr oft Karten, nun wollen wir wissen wie es über das ganze Jahr aussieht mit Gewinn oder Verlust.
Ich habe hierzu eine Tabelle gebastelt, wo man die Siege eingibt und es rechnet dann automatisch wer was gewonnen oder verloren hat. (Ergebnis)
Nun bräuchte ich eine Lösung wie ich aus der Tabelle (Ergebnis) die Daten in die Tabelle (Jahresstatistik) übertragen kann.
Es sollte so aussehen, wenn die Daten übertragen wurden das ich die Tabelle wieder auf 0 setzen kann und z.B in einer Woche wird wieder gespielt und die neuen Ergebnisse sollten dann wieder per Klick in die Tabelle Jahresstatistik hinzugezählt werden.

Ich hoffe man versteht was ich mir vorstelle.

Hier die Datei
https://www.herber.de/bbs/user/158688.xlsx

mit besten Dank für Lösungsvorschläge

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten übertragen
12.04.2023 18:16:53
David
Hi,

hab das ganze mal auf die schnelle zusammengebastelt - ist natürlich noch ausbaufähig

Sub werteuebertragen()

Set ergebnis = Sheets("Tabelle1")
Set jahresstatistik = Sheets("Tabelle2")

ergebnis.Select


Dim valueToAdd As Integer
Dim currentValue As Integer


Dim myRange As Range
Set myRange = Range("B2:B8")

Dim myRange2 As Range
Set myRange2 = Range("C2:C8")

Dim cell As Range
    Dim i As Integer
    i = 2 ' Startzeile in Tabelle2, in die kopiert werden soll
    
    For Each cell In myRange
        valueToAdd = Worksheets("Tabelle1").Cells(i, 2).Value ' Wert aus Tabelle 1 in Variable speichern
        currentValue = Worksheets("Tabelle2").Cells(i, 2).Value ' Aktuellen Wert in Tabelle 2 auslesen
        Worksheets("Tabelle2").Cells(i, 2).Value = currentValue + valueToAdd ' Wert in Tabelle 2 aufaddieren und speichern
        
        i = i + 1
    Next cell
    
    Dim j As Integer
    j = 2
    For Each cell In myRange2
        
        valueToAdd = Worksheets("Tabelle1").Cells(j, 3).Value ' Wert aus Tabelle 1 in Variable speichern
        currentValue = Worksheets("Tabelle2").Cells(j, 3).Value ' Aktuellen Wert in Tabelle 2 auslesen
        Worksheets("Tabelle2").Cells(j, 3).Value = currentValue + valueToAdd ' Wert in Tabelle 2 aufaddieren und speichern
        
        j = j + 1
    Next cell
myRange.Value = 0
myRange2.Value = 0


End Sub
Du musst noch die Sheets für ergebnis und jahresstatisitk anpassen, sonst sollte es funktionieren


Anzeige
AW: Daten übertragen
12.04.2023 18:36:59
Udo Pacher
Hallo vielen Dank erstmal, hab den Code getestet.
Leider kommt ein Laufzeitfehler und er markiert diese Zeile im Code

valueToAdd = Worksheets("Tabelle1").Cells(i, 2).Value ' Wert aus Tabelle 1 in Variable speichern

Vielen Dank für deine Hilfe


AW: Daten übertragen
12.04.2023 18:51:32
David
Du musst in dem Fall nochmal schauen, wie die entsprechenden Tabellen genau heißen und Tabelle 1 ggf. dadurch dann ersetzen. Alternativ kannst du auch schreiben
valueToAdd = Worksheets(1).Cells(i, 2).Value

und anstatt der 1 die entsprechende Zahl des Tabellenblatts ergänzen


Anzeige
AW: Daten übertragen
12.04.2023 18:57:29
Luschi
Hallo Udo,

schreibe den For-Schleifen-Kopf so: For Each cell In myRange.Cells

Gruß von Luschi
aus klein-Paris


AW: Daten übertragen
13.04.2023 17:24:08
Udo Pacher
Hallo
Danke für deine Hilfe, leider funktioniert der Code noch immer nicht

Laufzeitfehler 13
Typen unverträglich
Es wird diese Zeile markiert
currentValue = Worksheets("Tabelle2").Cells(i, 2).Value ' Aktuellen Wert in Tabelle 2 auslesen

Habe meine Tabellenblätter richtig umbenannt.

Könntest du mir den Code einfügen in meine Hochgeladene Datei?

LG Udo

Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige