Eingegebene Daten in seperate Excel Datei übertragen und speichern
#1
Wink 
Hallo liebe Community,
Soeben habe ich mich hier angemeldet und benötige dringend Hilfe Huh
Zu meiner Verteidigung, ich bin ein Neuling in sachen Excel bzw. VBA
Ich habe auch schon ausgiebig nach meinem Problem nachgeforscht aber habe nicht wirklich etwas passendendes für mein problem gefunden.
Könntet ihr mir vielleicht helfen mit einer kleinen Erklärung? 

Ich habe 2 Excel Dateien
In der ersten Excel Datei (Daten_Eingabe.xlsm) möchte ich die eingegebenen Daten in die andere Mappe (Daten_Archiv.xlsm) per Button übertragen und automatisch speichern. 


Vielen lieben Dank  Blush

Oje, ich kann gar nicht meine beispiel mappen hochladen  Confused


Angehängte Dateien
.xlsm   Daten_Archiv.xlsm (Größe: 13,36 KB / Downloads: 6)
.xlsm   Daten_Eingabe.xlsm (Größe: 19,66 KB / Downloads: 6)
Top
#2
Hallo,

Zitat:Oje, ich kann gar nicht meine beispiel mappen hochladen

... nach der Dateiauswahl mußt Du den auf der rechten Seite befindlichen
Button "Attachment hinzufügen" klicken. Dann klappt das auch.  :19: :18: :19:
Top
#3
(31.05.2019, 22:08)Käpt\n Blaubär schrieb: Hallo,


... nach der Dateiauswahl mußt Du den auf der rechten Seite befindlichen
Button "Attachment hinzufügen" klicken. Dann klappt das auch.  :19: :18: :19:

Jetzt sieht die Welt wieder ganz anders aus  Smile
Danke schön
Top
#4
Hallöchen,

Du kannst auch den Makrorekorder nutzen um Deine Aktionen aufzuzeichnen. Schaue mal hier:

[Excel, Word] Makrorekorder
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#5
Hallo,

dann gleich noch den nächsten Button zum Kennenlernen.

Wenn Du antworten willst, benutze bitte den großen blauen "Antworten"-Button.
Dann ersparst Du uns Allen, den schon gelesenen bzw. selbst geschriebenen Post
noch einmal lesen zu müssen. Den kennen wir nämlich schon.

Wenn Du unbedingt was Spezielles wiederholen willst, beispielsweise weil Du Dich
darauf beziehen willst, dann funktionieren Zitate auch durch Kopieren und Einfügen.
Top
#6
Hallo

mit diesem Code sollte das kopieren gehen.  Jede Eingabe wird sofort gespeichert.  Sonst muss fürs Speichern einen eigenen Button nehmen.

mfg  Gast 123

Code:
Private Sub CommandButton1_Click()
Dim WbDA As Worksheet, lzDA As Long
Dim WbEg As Worksheet, lzEg As Long
'Mappen in Variable laden
Set WbDA = Workbooks("Daten_Archiv.xlsm").Sheets("Daten_Archiv")
Set WbEg = Workbooks("Daten_Eingabe.xlsm").Sheets("Daten_eingabe")

  'LastZell in beiden Dateien suchen
  lzEg = WbEg.Cells(Rows.Count, 2).End(xlUp).Row
  lzDA = WbDA.Cells(Rows.Count, 1).End(xlUp).Row + 1
  If lzEg = 1 Then Exit Sub
 
  'Letzte Zeile ins Archiv kopieren
  WbEg.Cells(lzEg, 2).Resize(1, 9).Copy
  WbDA.Cells(lzDA, 1).PasteSpecial xlPasteValues
  Application.CutCopyMode = False
   
   'Archiv sofort speichern
   WbDA.Save
End Sub
Top
#7
Guten Morgen Smile
Hi, hab den Code eingefügt aber es erscheint folgende Meldung.
Was hab ich falsch gemacht?  Confused


Angehängte Dateien Thumbnail(s)
   
Top
#8
Hallöchen,

falls Du die Datei speichern willst, dann musst DU auch selbige nehmen und ncht ein Blatt.
Falls Du ein Blatt aus der Datei lösen willst oder eine Kopie als eigenständige Datei erzeugen willst machst Du es mit .move oder .copy.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#9
Hallo Schauan,

Sorry aber wie gesagt ich bin totaler neuling in sachen VBA.
Ich versteh nicht ganz was Sie meinen  Huh
Der Quellcode von Gast 123 funktioniert so dann gar nicht?
Top
#10
Hallo

die Kritik ist eindeutig berechtigt, aber sachlich nicht ganz richtig!  Bei meinen Makros ist schon mal eine WENN Verknüpfung drin !!

Sie laufen Komma, in über 1.000 Threads bewiesen, WENN Gast 123 seine dummen Flüchtigkeitsfehler ausgebaut hat!!  Punkt! 
Vorteil:  das neue Makro prüft ob die Eingabe der letzten Zeile bereits erfolgt ist. WENN es laeuft ist das eine Verbesserung ....
Viel Glück beim Testen.  Würde mich freuen wenn es jetzt klappt.  Und meine Fehler nimmt man mit 69 gelassen, mit Humor.

mfg  Gast 123

Code:
Private Sub CommandButton1_Click()
Dim WbDA As Worksheet, lzDA As Long
Dim WbEg As Worksheet, lzEg As Long
Dim j As Integer, n As Integer
'Mappen in Variable laden
Set WbDA = Workbooks("Daten_Archiv.xlsm").Sheets("Daten_Archiv")
Set WbEg = Workbooks("Daten_Eingabe.xlsm").Sheets("Daten_eingabe")

  'LastZell in beiden Dateien suchen
  lzEg = WbEg.Cells(Rows.Count, 2).End(xlUp).Row
  lzDA = WbDA.Cells(Rows.Count, 1).End(xlUp).Row + 1
  If lzEg = 1 Then Exit Sub
 
  'Vorptüfung ob schon kopiert wurde ...
  For j = 1 To 9
     If WbEg.Cells(lzEg, j + 1) = WbDA.Cells(lzDA - 1, j) Then n = n + 1
  Next j

  If n = 9 Then MsgBox "Daten wurden bereits 1 Zeile vorher kopiert": Exit Sub
 
  'Letzte Zeile ins Archiv kopieren
  WbEg.Cells(lzEg, 2).Resize(1, 9).Copy
  WbDA.Cells(lzDA, 1).PasteSpecial xlPasteValues
  Application.CutCopyMode = False
 
  'Archiv sofort speichern
  Workbooks("Daten_Archiv.xlsm").Save
End Sub
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste