Anzeige
Archiv - Navigation
1584to1588
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 schreiben

Daten schreiben
11.10.2017 23:32:35
stef26
Guten Abend,
ich hab da mal ne Frage.
Mit folgenden Code schreibe ich einen Status (0 oder 1) in eine Zelle einer anderen Arbeitsmappe.
Sub AbgerundetesRechteck1_Klicken()
Dim shZiel As Worksheet, shQuelle As Worksheet
Dim lngZeile As Long
Application.ScreenUpdating = False
Application.EnableEvents = False
Set shQuelle = ThisWorkbook.Sheets("Steuerung")
Set shZiel = GetObject("C:\Users\Desktop\Steuerung.xlsx").Sheets("Test")
With shZiel
Range("C2") = 1
With .Parent
.Close SaveChanges:=True
End With
End With
Application.ScreenUpdating = True
Application.EnableEvents = True 'Auf Ereignise reagieren einschalten
End Sub
Was noch sehr unschön ist, dass beim einschreiben man trotz ausgeschalteten screenupdate man erkennt, wie die Exceldatei aufgemacht wird.
Kann man dies irgendwie anders unterdrücken?
Gruß
Stefan

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

Betreff
Datum
Anwender
Anzeige
AW: Daten schreiben
12.10.2017 00:24:50
Luschi
Hallo Stefan,
in der Vba-Hiilfe zur GetObject steht das hier:
Beim Ausführen dieses Codes wird die mit dem angegebenen Pfadnamen verknüpfte Anwendung gestartet, und das Objekt in der angegebenen Datei wird aktiviert.
Benutze stattdessen CreateObject, dieses muß man erst sichtbar schalten:

Sub AbgerundetesRechteck1_Klicken()
Dim xlApp As Object, xlBook As Object, _
shZiel As Object, shQuelle As Object
Dim lngZeile As Long
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Set shQuelle = ThisWorkbook.Sheets("Steuerung")
Set xlApp = CreateObject("Excel.Application")
''ohne die nachfolgende Anweisung bleibt diese
''Excel-Fenster unsichtbar
''xlApp.Visible = True
Set xlBook = xlApp.Workbooks.Open("C:\Users\Desktop\Steuerung.xlsx")
Set shZiel = xlBook.Worksheets("Test")
shZiel.Range("C2") = 1
With xlBook
.Close SaveChanges:=True
.Saved = True
End With
xlApp.Quit
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
Set shQuelle = Nothing: Set shZiel = Nothing
Set xlBook = Nothing: Set xlApp = Nothing
End Sub
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Daten schreiben
12.10.2017 18:40:40
stef26
Hallo Luschi,
ah ok.
Super man lernt nicht aus.
Besten Dank
Gruß
Stefan

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige