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

Forumthread: excel daten in andere tabelle einfügen

excel daten in andere tabelle einfügen
05.01.2007 12:15:38
Servoazubi
Ich habe folgende komplexe Aufgabe für Excel/VBA.
Es gibt eine Tabelle mit vielen Artiekeln und allen möglichen angaben dazu. dazu hab ich eine Userform erstellt, in der man über die artikelnummer daten abfragen kann oder neue datensätze eingeben kann und diese speichern.
Nun soll es auf der Userform einen Button geben, der alle Datensätze der Standart Tabelle in eine neue Tabelle mit einer anderen Formatierung. VBA programmierung ist erforderlich, das viele Daten verschiedene Datensätze nur unter bedingungen auftauchen dürfen oder z.b. alle in eine Zelle.
Wie muss ich die Grundstrucktur aufbauen, damit er automatisch mit einem knopfdruck alle datensätze in die neue tabelle übernimmt?
die anzahl der datensätze kann variieren.
danke für die hilfe
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: excel daten in andere tabelle einfügen
05.01.2007 12:35:38
lupo
Machs wie ich vor 5 Monaten als ich mit VBA anfing, besorg dir mal anständige Literatur und arbeite dich rein, da werden auch die Grundstrukturen erklärt. Prinzipiell teile das Gesamtproblem in einzelne Probleme auf, löse sie, setze die Bedingungen untereinander und verknüpfe das ganze dann mit dem "Knopf".
Dann solltest du deine Fragen klar formulieren, ich erkenne aus dem Text nicht genau, was das werden soll...
MfG
Anzeige
AW: excel daten in andere tabelle einfügen
05.01.2007 13:15:47
Servoazubi
Ich habe ja ein kleinesvorwissen, weiss nur nicht wie ich das programmieren kann das der automatisch erkennt wie viele datensätze es gibt, den rest bekomme ich schon hin
AW: excel daten in andere tabelle einfügen
05.01.2007 16:20:27
Peter
Hallo Servoazubi
hier ein Beispielmakro, das die Zeilen der Quell-Tabelle 1:1 in die Ziel-Tabelle koipert.


Private Sub CommandButton1_Click()
Dim WkSh_Q    As Worksheet
Dim WkSh_Z    As Worksheet
Dim lLetzte   As Long
Dim lZeile_Q  As Long
Dim lZeile_Z  As Long
   Application.ScreenUpdating = False
   Set WkSh_Q = Worksheets("Tabelle1") ' das gewünschte Quell-Tabellenblatt
   Set WkSh_Z = Worksheets("Tabelle2") ' das gewünschte  Ziel-Tabellenblatt
'
'   im Quell-Tabellenblatt die letzte belegte Zeile der Spalte A feststellen
'
   lLetzte = IIf(WkSh_Q.Range("A65536") <> "", 65536, _
      WkSh_Q.Range("A65536").End(xlUp).Row)
   lZeile_Z = 1 ' die Start-Zeile des Ziel-Tabellenblatte festlegen
   For lZeile_Q = 1 To lLetzte  ' Quell-Tabelle von Zeile 1 bis zur letzten
      WkSh_Z.Range("A" & lZeile_Z & "Z" & lZeile_Z).Value = _
      WkSh_Q.Range("A" & lZeile_Q & "Z" & lZeile_Q).Value
      lZeile_Z = lZeile_Z + 1  ' die Zeilen-Nr im Ziel-Blatt hochrechnen
   Next lZeile_Q
   Application.ScreenUpdating = True
End Sub 


Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
Anzeige
AW: excel daten in andere tabelle einfügen
05.01.2007 17:10:38
Peter
Hallo Servoazubi,
eine kleine, aber wichtige Korrektur:
WkSh_Z.Range("A" & lZeile_Z & ":Z" & lZeile_Z).Value = _
WkSh_Q.Range("A" & lZeile_Q & ":Z" & lZeile_Q).Value
Die Doppelpunkte fehlten in der ersten Version.
Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Excel Daten aus einer Tabelle automatisch einfügen


Schritt-für-Schritt-Anleitung

Um Excel Daten aus einer anderen Tabelle automatisch einzufügen, kannst du ein einfaches VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.
  2. Einfügen eines neuen Moduls: Klicke auf Einfügen > Modul.
  3. Kopiere das folgende Beispielmakro in das Modul:
Private Sub CommandButton1_Click()
    Dim WkSh_Q As Worksheet
    Dim WkSh_Z As Worksheet
    Dim lLetzte As Long
    Dim lZeile_Q As Long
    Dim lZeile_Z As Long

    Application.ScreenUpdating = False
    Set WkSh_Q = Worksheets("Tabelle1") ' Quell-Tabellenblatt
    Set WkSh_Z = Worksheets("Tabelle2") ' Ziel-Tabellenblatt

    lLetzte = WkSh_Q.Cells(Rows.Count, 1).End(xlUp).Row
    lZeile_Z = 1 ' Start-Zeile des Ziel-Tabellenblattes

    For lZeile_Q = 1 To lLetzte
        WkSh_Z.Range("A" & lZeile_Z & ":Z" & lZeile_Z).Value = WkSh_Q.Range("A" & lZeile_Q & ":Z" & lZeile_Q).Value
        lZeile_Z = lZeile_Z + 1 ' Zeilen-Nr im Ziel-Blatt hochrechnen
    Next lZeile_Q

    Application.ScreenUpdating = True
End Sub
  1. Anpassen der Quell- und Ziel-Tabellenblätter: Stelle sicher, dass du die richtigen Namen für Tabelle1 und Tabelle2 verwendest.
  2. Erstelle einen Button in deiner Excel-Oberfläche und verknüpfe ihn mit CommandButton1_Click.

Mit diesem Makro kannst du Excel Daten in eine andere Tabelle einfügen und sicherstellen, dass alle Daten korrekt übertragen werden.


Häufige Fehler und Lösungen

  • Fehler: "Subscript out of range"

    • Lösung: Überprüfe die Namen der Tabellenblätter. Die Namen müssen exakt übereinstimmen.
  • Fehler: Daten werden nicht eingefügt

    • Lösung: Stelle sicher, dass das Makro tatsächlich ausgeführt wird. Überprüfe, ob der Button korrekt verknüpft ist.
  • Fehler: Zeilen werden nicht hochgezählt

    • Lösung: Vergewissere dich, dass die Schleife richtig konfiguriert ist und die Zähler korrekt initialisiert sind.

Alternative Methoden

Wenn du kein VBA verwenden möchtest, gibt es auch alternative Methoden, um Excel Daten in eine Tabelle einzufügen:

  1. Kopieren und Einfügen: Markiere die benötigten Daten in der Quelltabelle, kopiere sie (CTRL + C) und füge sie in die Zieltabelle ein (CTRL + V).
  2. Verwenden von Formeln: Du kannst auch Formeln wie =Tabelle1!A1 verwenden, um Daten dynamisch von einer Tabelle in eine andere zu verlinken.

Praktische Beispiele

Hier sind einige praktische Beispiele, wie du Excel Makros nutzen kannst, um Daten in Tabellen einzutragen:

  • Beispiel 1: Übertrage nur bestimmte Daten, z.B. alle Artikelnummern, die einen bestimmten Wert überschreiten.
  • Beispiel 2: Erstelle eine Userform, in der Benutzer neue Datensätze eingeben können, und speichere diese automatisch in der Zieltabelle.
If WkSh_Q.Range("A" & lZeile_Q).Value > 100 Then
    WkSh_Z.Range("A" & lZeile_Z & ":Z" & lZeile_Z).Value = WkSh_Q.Range("A" & lZeile_Q & ":Z" & lZeile_Q).Value
    lZeile_Z = lZeile_Z + 1
End If

Tipps für Profis

  • Nutze die WorksheetFunction-Methoden in VBA, um Berechnungen durchzuführen, während du die Daten überträgst.
  • Verwende Fehlerbehandlungsroutinen in deinem Makro, um Probleme während der Ausführung zu erkennen und zu beheben.
  • Halte deine Userform übersichtlich, und stelle sicher, dass alle erforderlichen Felder ausgefüllt sind, bevor der Datensatz gespeichert wird.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass das Makro nur bestimmte Daten überträgt? Du kannst Bedingungen im VBA-Code hinzufügen, um nur die gewünschten Daten zu filtern.

2. Funktioniert das Makro in allen Excel-Versionen? Das Makro sollte in den meisten Excel-Versionen ab Excel 2007 funktionieren, solange die Grundstruktur beibehalten wird.

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