Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Werte in anderes Tabellenblatt schreiben per Makro

Werte in anderes Tabellenblatt schreiben per Makro
31.03.2005 13:53:07
Tom
Hallo ihr Experten
Erst einmal ein großes Dankeschön im voraus für eure Mühen.
Nun mein Anliegen:
Ich habe eine Exceldatei mit mehreren Tabellenblättern.
Wenn ich nun eine Neue Ware einfügen möchte, habe ich ein Makro erstellt, welches mir Tabelle 1 aufruft und in der ich dann meine Daten eingebe. Nun habe ich folgendes Problem: Bei Klick auf ein weiters Makro sollten die Daten in das andere Tabellenblatt rangiert werden. Eine Formel mit Sverweis oder ähnliches kann ich nicht anwenden, da die Daten nur einmalig übernommen werden sollen und in der Tabelle 2 auch noch andere Formeln hinterlegt sind durch die es dann zu Problemen kommt.
Tabelle(1) Neue Ware einfügen:
In B22 ist der Wert (veränderbar) in welche Zeile das nachfolgende geschrieben wird (z.B: 96)
Nachfolgend hab ich dann mehrere Werte die übernommen werden sollten insgesamt: 16 Stück
Tabelle(2) Warenliste:
In diese Tabelle sollten nun die 16 Werte eingesetzt werden und zwar alle in die Zeile von dem Wert der in dem Feld Tabelle 1 Feld B22 steht. Nun als Beispiel mit B22 = Wert 96 mal unten aufgeführt.
Tabelle 1 nach Tabelle 2
c18 nach b 96
d18 nach c 96
g18 nach e 96
h18 nach f 96
j20 nach h 96
k20 nach i 96
l20 nach j 96
m20 nach k 96
.. nach ..
u20 nach s 96
Und das sollte eben passieren bei klick auf ein makro.
Ich hoffe ich hab das nun zumindest so halbwegs verständlich erklärt.
Gruß Tom
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte in anderes Tabellenblatt schreiben per Makro
31.03.2005 14:09:30
u_
Hallo,
so nach dem Motto:
Range("C18").copy sheets("Tabelle2").Range("B" &Range("B22")
Range("D18").copy sheets("Tabelle2").Range("B" &Range("C22")
etc.
Gruß
Anzeige
Korrektur
31.03.2005 14:11:43
u_
Hallo,
natürlich so:
Range("C18").copy sheets("Tabelle2").Range("B" &Range("B22")
Range("D18").copy sheets("Tabelle2").Range("C" &Range("B22")
Gruß
AW: Korrektur
31.03.2005 14:15:02
Tom
Vielen Dank
für deine Hilfe hast mir sehr geholfen
werd das gleich mal eintippseln
schönen tag noch
gruß Tom
Anzeige
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Werte in anderes Tabellenblatt übertragen mit Makro


Schritt-für-Schritt-Anleitung

Um Werte von einem Tabellenblatt in ein anderes zu übertragen, kannst Du ein einfaches Makro verwenden. Folgende Schritte sind notwendig, um dies zu erreichen:

  1. Öffne die Excel-Datei mit den benötigten Tabellenblättern.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Erstelle ein neues Modul:

    • Klicke im Menü auf Einfügen > Modul.
  4. Füge den folgenden Code ein:

    Sub WerteUebertragen()
       Dim zielZeile As Long
       zielZeile = Sheets("Tabelle1").Range("B22").Value
    
       Sheets("Tabelle2").Range("B" & zielZeile).Value = Sheets("Tabelle1").Range("C18").Value
       Sheets("Tabelle2").Range("C" & zielZeile).Value = Sheets("Tabelle1").Range("D18").Value
       Sheets("Tabelle2").Range("E" & zielZeile).Value = Sheets("Tabelle1").Range("G18").Value
       Sheets("Tabelle2").Range("F" & zielZeile).Value = Sheets("Tabelle1").Range("H18").Value
       Sheets("Tabelle2").Range("H" & zielZeile).Value = Sheets("Tabelle1").Range("J20").Value
       Sheets("Tabelle2").Range("I" & zielZeile).Value = Sheets("Tabelle1").Range("K20").Value
       Sheets("Tabelle2").Range("J" & zielZeile).Value = Sheets("Tabelle1").Range("L20").Value
       Sheets("Tabelle2").Range("K" & zielZeile).Value = Sheets("Tabelle1").Range("M20").Value
       Sheets("Tabelle2").Range("S" & zielZeile).Value = Sheets("Tabelle1").Range("U20").Value
    End Sub
  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Führe das Makro aus, indem Du auf Entwicklertools > Makros gehst und das gerade erstellte Makro auswählst.

Damit sollten die Werte aus Tabelle 1 gemäß Deiner Eingaben in Tabelle 2 übertragen werden.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 1004": Dieser Fehler tritt auf, wenn Du versuchst, auf eine Zelle oder einen Bereich zuzugreifen, der nicht existiert. Stelle sicher, dass die Tabellenblätter "Tabelle1" und "Tabelle2" korrekt benannt sind und die Zelle in B22 einen gültigen Wert enthält.

  • Fehler: Keine Werte werden übertragen: Überprüfe, ob Du das Makro tatsächlich ausführst. Ein häufiger Fehler ist, dass man das Makro nicht korrekt startet.


Alternative Methoden

Falls Du kein Makro verwenden möchtest, kannst Du auch die Kopieren und Einfügen-Methode nutzen:

  1. Markiere die Zellen in Tabelle 1, die Du übertragen möchtest.
  2. Drücke Strg + C, um die Zellen zu kopieren.
  3. Gehe zu Tabelle 2 und wähle die Zielzelle aus (z.B. B96).
  4. Drücke Strg + V, um die Werte einzufügen.

Beachte, dass diese Methode weniger automatisiert ist und Du die Werte manuell anpassen musst.


Praktische Beispiele

  • Wenn Du in Tabelle 1 in Zelle B22 den Wert 96 eingibst, werden die Werte aus den Zellen C18, D18, G18, H18, etc. in die entsprechenden Zellen von Tabelle 2 (B96, C96, E96, F96, usw.) übertragen.

  • Durch Anpassung der Zielzeile in B22 kannst Du die Daten an jedem gewünschten Ort in Tabelle 2 einfügen.


Tipps für Profis

  • Fehlerbehandlung im Makro: Füge On Error Resume Next am Anfang Deines Makros hinzu, um Laufzeitfehler zu ignorieren. Dies kann nützlich sein, wenn Du das Makro häufig ausführst und keine Unterbrechungen möchtest.

  • Verwende benannte Bereiche: Anstatt direkte Zellreferenzen zu verwenden, kannst Du benannte Bereiche in Excel erstellen. Dies macht Deinen Code lesbarer und leichter zu warten.


FAQ: Häufige Fragen

1. Kann ich das Makro anpassen, um mehr Werte zu übertragen?
Ja, Du kannst einfach zusätzliche Zeilen im Makro hinzufügen, um weitere Zellen zu kopieren und einzufügen.

2. Funktioniert dieses Makro in Excel 2016 und 2019?
Ja, die oben genannten Schritte und der VBA-Code sind mit Excel 2016, 2019 und auch mit Excel 365 kompatibel.

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