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

Tabellen über Makro füllen und fortschreiben

Forumthread: Tabellen über Makro füllen und fortschreiben

Tabellen über Makro füllen und fortschreiben
18.06.2002 12:40:58
Dirk
Hallo Zusammen,

folgende Situation:
In diesen Bsp gehe ich davon aus das die Daten (die später in die Tabelle2 übertragen werden sollen) in der Tabelle1
in der Zelle A1,B1,C1 und D1 stehen.
Bei Verwendung des Codes werden die Zellen der Tabelle1 (a1,b1,c1 und d1) in die Tabelle 2 in die Zelle 9 geschrieben
sollte die Zelle A9 bereits belegt sein wird die nächste freie Zeile benutzt.

Das füllen der Tab2 erfolgt über die Verknüpfung Schaltfläche-Makro.

Meine Frage:
Da ich bei diesem Beispiel nur 4 Feldinhalte (A1,B1,C1,D1) über die Betätigung der Schaltfläche, in
die Tab2 schreiben kann, ich aber ca. 30 Feldinhalte benötige, meine Frage:
Wer kann die Syntax so anpassen, dass ich mehr als nur 4 Werte wegschreiben kann?

Sub Datenuebertrag()
Dim laR As Long
Dim i As Byte
laR = Worksheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).Row
If laR < 9 Then laR = 9
For i = 1 To 4 Step 1
Worksheets("Tabelle2").Cells(laR + 1, i).Value = Cells(1, i).Value
Next i
End Sub

Vielen dank im voraus

PS: Danke Silvio für den Lösungsansatz


Gruß
Dirk


Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: Tabellen über Makro füllen und fortschreiben
18.06.2002 12:55:57
Armin

Sub Datenuebertrag()
Dim laR As Long
Dim i As Byte
laR = Worksheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).Row
If laR < 9 Then laR = 9
For i = 1 To 10 Step 1
Worksheets("Tabelle2").Cells(laR + 1, i).Value = Cells(1, i).Value
Next i
End Sub

Ich empfehle Dir Excel-VBA Literatur!

Anzeige
Re: Tabellen über Makro füllen und fortschreiben
20.06.2002 17:45:47
Dirk
Hallo Armin,

hältst Du das Problem für wirklich so kompliziert?

Gruß
Dirk

;
Anzeige

Infobox / Tutorial

Tabellen über Makro füllen und fortschreiben


Schritt-für-Schritt-Anleitung

Um Daten in Excel von einer Tabelle in eine andere zu übertragen, kannst Du ein Makro verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und erstelle zwei Tabellen: Tabelle1 und Tabelle2.

  2. Gib die Daten, die Du übertragen möchtest, in die Zellen A1, B1, C1 und D1 von Tabelle1 ein.

  3. Öffne den VBA-Editor:

    • Drücke ALT + F11.
  4. Füge ein neues Modul hinzu:

    • Klicke mit der rechten Maustaste auf "VBAProject (DeineArbeitsmappe)" > Einfügen > Modul.
  5. Kopiere und füge folgenden Code in das Modul ein:

    Sub Datenuebertrag()
       Dim laR As Long
       Dim i As Byte
       laR = Worksheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).Row
       If laR < 9 Then laR = 9
       For i = 1 To 10 Step 1 ' Hier kannst Du die Anzahl der zu übertragenden Werte anpassen
           Worksheets("Tabelle2").Cells(laR + 1, i).Value = Worksheets("Tabelle1").Cells(1, i).Value
       Next i
    End Sub
  6. Schließe den VBA-Editor.

  7. Erstelle eine Schaltfläche in Deiner Tabelle, um das Makro auszuführen:

    • Gehe zu Entwicklertools > Einfügen > Schaltfläche (Formularsteuerung).
    • Zeichne die Schaltfläche auf die Tabelle und verknüpfe sie mit dem Datenuebertrag-Makro.
  8. Klicke auf die Schaltfläche, um die Daten zu übertragen.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 9: Index außerhalb des gültigen Bereichs"

    • Lösung: Überprüfe, ob die Tabellennamen (Tabelle1 und Tabelle2) korrekt sind.
  • Fehler: Daten werden nicht übertragen

    • Lösung: Stelle sicher, dass Du die richtige Anzahl von Werten im Makro angibst (z.B. For i = 1 To 10), um alle benötigten Daten zu übertragen.

Alternative Methoden

Falls Du kein Makro verwenden möchtest, kannst Du auch die Funktion WENN und INDEX nutzen, um Daten fortzuschreiben. Hierbei wird allerdings mehr manuelle Arbeit benötigt. Makros sind eine effektive Methode, um Daten in Excel fortzuschreiben und zu füllen.


Praktische Beispiele

  1. Datumswerte fortschreiben

    • Du kannst auch Datumswerte in Excel fortschreiben, indem Du die Funktion =A1+1 in die Zelle A2 eingibst, um das Datum in A1 um einen Tag zu erhöhen.
    • Um dies über ein Makro zu tun, könnte ein Code wie folgt aussehen:
    Sub DatumFortschreiben()
       Dim lastRow As Long
       lastRow = Worksheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).Row
       Worksheets("Tabelle2").Cells(lastRow + 1, 1).Value = Worksheets("Tabelle2").Cells(lastRow, 1).Value + 1
    End Sub
  2. Füllen einer Tabelle mit verschiedenen Werten

    • Mit dem angepassten Makro kannst Du bis zu 30 Werte übertragen, indem Du For i = 1 To 30 verwendest und sicherstellst, dass die Werte in Tabelle1 vorhanden sind.

Tipps für Profis

  • Makros optimieren: Überlege, ob Du Deine Makros modularisieren kannst, um die Wartbarkeit zu erhöhen.
  • Fehlerbehandlung einbauen: Füge Fehlerbehandlungsroutinen in Deine Makros ein, um die Benutzerfreundlichkeit zu verbessern.
  • Regelmäßige Backups: Speichere Deine Excel-Dateien regelmäßig, um Datenverlust zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich die Anzahl der übertragenen Werte im Makro ändern?
Du kannst die Schleife im Makro anpassen, indem Du die Zahl in For i = 1 To X änderst, wobei X die Anzahl der zu übertragenden Werte ist.

2. Kann ich das Datum in Excel automatisch fortschreiben?
Ja, Du kannst das Datum in Excel fortschreiben, indem Du entweder eine Formel verwendest oder ein Makro schreibst, das das Datum automatisch anpasst.

3. Was mache ich, wenn ich eine Fehlermeldung beim Ausführen des Makros erhalte?
Überprüfe die Tabellennamen und stelle sicher, dass alle erforderlichen Zellen in Tabelle1 belegt sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige