Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1012to1016
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Daten in externe Datei schreiben

Daten in externe Datei schreiben
28.09.2008 19:50:00
Ludwig
Hallo Experten
Ich beschäftige mich schon seit einiger Zeit damit Daten in eine externe Datei zu schreiben - leider ohne Erfolg.
Set TB1.Worksheets("INPUT")
Set TB2.Worksheets("Datenbank")
Set TB3.Worksheets("DatenbankExtern")
TB2.Rows("2:2").Select
Selection.Copy
Workbooks.Open Filename:= ...
TB3.Select
TB3.Activate
TB3.Rows("2:2").Select
Selection.Insert Shift:=xlDown
Leider wird nichts in die Zelle kopiert!
Woran liegt das. Vielen Dank im voraus!
Gruß Ludwig

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

Betreff
Datum
Anwender
Anzeige
AW: Daten in externe Datei schreiben
28.09.2008 21:42:01
Tino
Hallo,
Du musst die Datei auch ansprechen.
Beachte auch die Deklarierung und dessen Zuweisung.
Modul Modul1
Option Explicit 
 
Sub Muster() 
Dim MeineDatei As Workbook 
Dim TB1 As Worksheet, TB2 As Worksheet 
 
Set TB1 = Worksheets("INPUT") 'Eeine Tabelle? 
Set TB2 = Worksheets("Datenbank") 'Noch eine Tabelle 
Set MeineDatei = Workbooks.Open(Filename:="C:\Test.xls") 
 
'Kopiere von Tabelle "Datenbank" 
TB2.Rows(2).Copy 
'Füge in geöffnete Datei in Tabelle "DatenbankExtern" ein 
MeineDatei.Sheets("DatenbankExtern").Rows(2).PasteSpecial 
Application.CutCopyMode = False 
 
 
End Sub 


Gruß Tino

Anzeige
AW: Daten in externe Datei schreiben
29.09.2008 08:26:49
Ludwig
Hallo Tino
Vielen Dank für Deine Antwort.
Leider funktioniert die "Ansprache" der richtigen Datei immer noch nicht! Hier nochmals der gesamte Code:

Private Sub DatenSpeichern_Click()
Dim TB1, TB2 As Worksheet
Dim DatenbankDateiExtern As Workbook
Dim DatenZähler, x, y, i As Integer
'Application.ScreenUpdating = False
'Application.DisplayAlerts = False
On Error Resume Next
Set TB1 = Worksheets("INPUT")
Set TB2 = Worksheets("Datenbank")
Set DatenbankDateiExtern = Workbooks.Open(Filename:=ThisWorkbook.Path & "\DatenbankExtern.xlsx") _
TB2.Select
TB2.Activate
TB2.Rows(2).Select
Selection.Insert Shift:=xlDown          'Leerzeile einfügen
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
TB2.Range("$A$2").Value = TB2.Range("$A$3").Value + 1
x = 2
While IsEmpty(TB2.Cells(1, x)) = False
TB2.Cells(2, x).Value = "=" & TB2.Cells(1, x).Text
x = x + 1
Wend
TB2.Rows(2).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:= _
False
Selection.Copy
'Füge in geöffnete Datei in Tabelle "DatenbankExtern" ein
DatenbankDateiExtern.Sheets("DatenbankExtern").Rows(2).PasteSpecial
Application.CutCopyMode = False
ActiveWorkbook.Save
ActiveWorkbook.Close
TB1.Select
Range("AngebotsNummer").Select
Application.ScreenUpdating = True
Application.DisplayAlerts = True
MsgBox x + 1 & " - Daten in die Datenbank geschrieben!", vbOKOnly, "Datenbank-Meldung"
End Sub


Anstatt das die "DatenbankDateiExtern" gespeichert und geschlossen wird, schließt VBA TB2!
Hast Du noch eine Idee?
Vielen Dank vorab!
Gruß Ludwig

Anzeige
AW: Daten in externe Datei schreiben
29.09.2008 09:15:00
Ludwig
Hallo an Alle
Sorry, mit einem simplen ".Activate" geht das natürlich!
Nochmals vielen Dank an Alle!
Gruß Ludwig
AW: Daten in externe Datei schreiben
29.09.2008 10:10:00
Tino
Hallo,
so müsste Dein Code Funktionieren, vorausgesetzt Deine Angaben stimmen.
Modul Modul1
Option Explicit 
 
Private Sub DatenSpeichern_Click() 
 Dim TB2 As Worksheet 
 Dim DatenbankDateiExtern As Workbook 
 Dim DatenZähler, x, y, i As Integer 
  
 Application.ScreenUpdating = False 
 Application.DisplayAlerts = False 
 
 Set TB2 = Worksheets("Datenbank") 
 Set DatenbankDateiExtern = Workbooks.Open(Filename:=ThisWorkbook.Path & "\DatenbankExtern.xlsx") _
  
  
 
  TB2.Rows(2).Insert Shift:=xlDown          'Leerzeile einfügen 
     With TB2.Rows(2).Interior 
         .Pattern = xlNone 
         .TintAndShade = 0 
         .PatternTintAndShade = 0 
     End With 
  
 TB2.Range("$A$2").Value = TB2.Range("$A$3").Value + 1 
 x = 2 
 While IsEmpty(TB2.Cells(1, x)) = False 
     TB2.Cells(2, x).Value = "=" & TB2.Cells(1, x).Text 
     x = x + 1 
 Wend 
 
 TB2.Rows(2).Copy 
 
 'Füge in geöffnete Datei in Tabelle "DatenbankExtern" ein 
 DatenbankDateiExtern.Sheets("DatenbankExtern").Rows(2).PasteSpecial 
 Application.CutCopyMode = False 
 DatenbankDateiExtern.Close True 
   
 Worksheets("INPUT").Select 
 Range("AngebotsNummer").Select 
 Application.ScreenUpdating = True 
 Application.DisplayAlerts = True 
  
 MsgBox x + 1 & " - Daten in die Datenbank geschrieben!", vbOKOnly, "Datenbank-Meldung" 
 End Sub 
 


Gruß Tino

Anzeige

52 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige