Das Archiv des Excel-Forums

Macro soll auf geschlossene Arbeitsmappe zugreifen

Bild

Betrifft: Macro soll auf geschlossene Arbeitsmappe zugreifen
von: MichiM

Geschrieben am: 19.09.2003 00:03:03

Hallo,
komme nicht weiter und finde irgendwie nichts passendes :((

Ein Makro, was in der Arbeitsmappe "Klassendaten_10b_Abfrage.xls" steht, soll Daten aus der Arbeitsmappe "Klassendaten_10b_editieren.xls" einfügen.

Das Problem: Die Quelldatei muss geschlossen bleiben (damit keiner "ausversehen" etwas ändern oder löschen kann).

Habe mich mal in den FAQ umgeschaut - so wie es unten steht, klappt es nur, wenn die Quelldatei geöffnet ist.

Kann mir jemand sagen, was ich umschreiben muss?

Schonmal vielen Dank für eure Hilfe

MichiM


-------------
Name = Range("D3").Value
Workbooks("Klassendaten_10b_editieren.xls").Activate
Sheets(Name).Select
Range("B8").Select
Selection.Copy
Workbooks("Klassendaten_10b_Abfrage.xls").Activate
Sheets("Eingabe").Select
Range("D6").Select
ActiveSheet.Paste
Workbooks("Klassendaten_10b_editieren.xls").Activate
Sheets(Name).Select
Range("B9").Select
Selection.Copy
Workbooks("Klassendaten_10b_Abfrage.xls").Activate
Sheets("Eingabe").Select
Range("D8").Select
ActiveSheet.Paste
usw.
Bild


Betrifft: AW: Macro soll auf geschlossene Arbeitsmappe zugreifen
von: PeterW
Geschrieben am: 19.09.2003 00:16:52

Hallo Michi,

auf eine geschlossene Datei kannst du mit Activate auf keinen Fall zugreifen. Kannst du die Quelldatei nicht schützen, dann wäre eine Änderung nicht möglich.

Gruß
Peter


Bild


Betrifft: AW: Macro soll auf geschlossene Arbeitsmappe zugreifen
von: MichiM
Geschrieben am: 19.09.2003 00:26:35

Hallo PeterW,
das Problem ist, dass in der Quelldatei auch die Eingabemaske zum editieren der Daten ist.
Ausserdem sind in der Quelldatei auch Daten, die nicht jeder sehen soll (Bankverbindung usw.).
Wenn nun beide Dateien geöffnet sind, ist die Gefahr zu Groß, das einer "mal eben" reinschaut. So ist es schwieriger die Quelldatei ausfindig zu machen - zumal von den Leuten nicht jeder weiss, wo und wie man diese findet.

Gruss
MichiM


Bild


Betrifft: AW: Macro soll auf geschlossene Arbeitsmappe zugreifen
von: PeterW
Geschrieben am: 19.09.2003 00:41:00

Hallo MichiM,

das ändert nichts daran, dass du auf eine geschlossene Mappe so nicht zugreifen kannst. Obwohl jeder Schutz in Excel zu umgehen ist würde ich in der Quelldatei die Daten, die nicht aus Versehen eingesehen werden sollen ausblenden und sowohl die Blätter als auch die Arbeitsmappe schützen. Wenn Änderungen in der Quelldatei vorzunehmen sind lässt sich der Schutz per Passwort aufheben.

Es gibt bestimmt eine Lösung aber wenn du deinen Level richtig angegeben hast wirst du ohne externe Hilfe nicht auskommen - und die würde ich dringend anraten wenn schützenswerte Daten vorliegen.

Gruß
Peter


Bild


Betrifft: AW: Macro soll auf geschlossene Arbeitsmappe zugreifen
von: MichiM
Geschrieben am: 19.09.2003 01:50:54

Hallo Peter,
danke für deine Bemühungen - es ist wirklich faszinierend, was Leute wie Du in diesem Forum leisten.

Habe auch eine Lösung gefunden:
Makro starten - Quelldatei öffnen - Daten auslesen - Quelldatei ohne speichern schliessen - Fertig

Aber als Newbie erstmal drauf kommen ;-)

bzgl. Level ist das so ein Ding - sagt man VBA gut und weiss nachher die einfachsten Befehle nicht, sieht das auch sche... aus. Also lieber ne Nummer kürzer treten.

Gruss und bis demnächst
MichiM


Bild


Betrifft: AW: Macro soll auf geschlossene Arbeitsmappe zugreifen
von: PeterW
Geschrieben am: 19.09.2003 02:08:24

Hallo MichiM,

schön, dass du eine Lösung gefunden hast aber nachvollziehen kann ich sie nicht. Wenn du die Datei nur öffnest um Daten auszulesen kannst du sie direkt wieder schließen, Änderungen wurden ja nicht vorgenommen.

Bezüglich deines ersten Codes schau dir mal links unter Excel-FAQ - xlBasics - Selektieren und Aktivieren an.

Wenn mir einfache Befehle fehlen benutze ich immer den Makrorekorder, der zeichnet zwar viel Müll auf aber mit etwas VBA-Erfahrung kann man den gesuchten Befehl schnell finden.

Gruß
Peter


Bild


Betrifft: AW: Macro soll auf geschlossene Arbeitsmappe zugreifen
von: Hajo_Zi
Geschrieben am: 19.09.2003 07:10:18

Hallo Michi

hier mal eine Möglichkeit ohne öffnen, die mal im Forum stand.

Option Explicit
' von Alf Herber Forum
' https://www.herber.de/forum/archiv/52to56/t52834.htm#52840
Sub TestGetValue()
Dim p As String
Dim f As String
Dim s As String
Dim r As String
p = "C:\temp\"
f = "test.xls"
s = "Tabelle3"
r = "A1"
MsgBox GetValue(p, f, s, r)
End Sub


Private Function GetValue(path, file, sheet, ref)
'   Retrieves a value from a closed workbook
Dim arg As String
'   Make sure the file exists
If Right(path, 1) <> "\" Then path = path & "\"
If Dir(path & file) = "" Then
GetValue = "File Not Found"
Exit Function
End If
'   Create the argument
arg = "'" & path & "[" & file & "]" & sheet & "'!" & _
Range(ref).Range("A1").Address(, , xlR1C1)
'   Execute an XLM macro
GetValue = ExecuteExcel4Macro(arg)
End Function




Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.

Zurzeit gibt es wieder Probleme mit der E-Mail Benachrichtigung.

Ich bekomme Mails zu Beiträgen an denen ich nicht beteiligt bin und zusätzlich noch Mails zu meinen eigenen Beiträgen.
Das Problem mit den eigenen Benachrichtigung kann gelöst werden durch Lösche und Neuanmelden. Dieses möchte ich aber nicht jeden Tag machen.
Um dieses Problem erstmal zu beseitigen habe ich die automatische Mailbenachrichtigung abgeschaltet.
Aus diesem Grunde ist es dem Zufall überlassen ob auf Rückfragen Antworten von mir kommen.


http://home.media-n.de/ziplies/



Bild


Betrifft: werd´s mir merken
von: MichiM
Geschrieben am: 19.09.2003 15:18:35

Hallo Hajo,
danke für deine Recherche.

Wie Peter richtig erkannt hat, brauch ich für die lösung, die ich "suchte" Hilfe.
Da dein Vorschlag aber (wenn es funktioniert) genau das richtige ist, werde ich mich die Tage mal damit beschäftigen. Als "Newbie" muss ich mich erstmal einarbeiten, damit ich überhaupt verstehe, was da vor sich geht.

Danke nochmal und
ein schönes Wochenende noch

MichiM


Bild


Betrifft: Danke für die Rückmeldung oT
von: Hajo_Zi
Geschrieben am: 19.09.2003 15:22:09




 Bild

Excel-Beispiele zum Thema " Macro soll auf geschlossene Arbeitsmappe zugreifen"

SVERWEIS auf geschlossene Arbeitsmappe aus Makro aufrufen download VBA-Zugriff auf geschlossene Arbeitsmappe. download
Mit der Indirekt-Funktion auf geschlossene Arbeitsmappe zugreifen download Zugriff auf geschlossene Arbeitsmappen download
MsgBox mit Werten aus geschlossener Arbeitsmappe download Verweise auf Zellen in geschlossener Arbeitsmappe erstellen download
Einfacher Zellbezug greift auf geschlossene Arbeitsmappe zu download Letzte Zelle einer Spalte mit Inhalt aus geschlossener Arbeitsmappe download
Daten aus geschlossenen Arbeitsmappen listen download Wert aus geschlossener Arbeitsmappe in UserForm-TextBox download
Werte aus geschlossenen Arbeitsmappen einlesen download Start des Makros nach Laden der Arbeitsmappe download
Prüfung, ob eine Arbeitsmappe geöffnet ist download Die "personl"-Arbeitsmappe ausgeblendet speichern download
Blätter in andere Arbeitsmappen kopieren download Variablenübergabe in andere Arbeitsmappen download
Arbeitsmappe-Schließen-Abfrage abfangen download Arbeitsmappe mit dem Namen des aktuellen Datums öffnen download
1000 Arbeitsblätter aus 1000 Arbeitsmappen einlesen download Arbeitsmappen-History erstellen download
Arbeitsmappe anlegen und Workbook_Open-Prozedur schreiben download Modul in einer zweiten Arbeitsmappe löschen download
Alle Links zu einer bestimmten Arbeitsmappe löschen download Arbeitsmappe unter dem Text eines Zelleintrags speichern download
Arbeitsmappe als Email versenden download Alle Arbeitsmappen außer einer schließen download
Auslesen der Arbeitsmappeneigenschaften download Arbeitsmappe doppelt speichern download
Arbeitsmappe unter Namen speichern download Arbeitsmappe ohne Rückfrage nach Aktualisierung öffnen download
Geöffnete Arbeitsmappen mit Arbeitblättern listen download Alle Arbeitsmappen schließen bzw. Excel beenden download
Aus AddIn neue Arbeitsmappe mit Code erstellen download Arbeitsmappe alle 5 Minuten neu berechnen download
Arbeitsmappe blitzschnell kopieren download Geburtstagsmeldung bei Öffnen der Arbeitsmappe download
Arbeitsmappe aus Dialog schließen download Arbeitsmappe ohne Rückfrage schließen download
Menü nur in der zugehörigen Arbeitsmappe sichtbar download Blattinhalt von einer zur anderen Arbeitsmappe kopieren download
Excel-Arbeitsmappe mit WinZip packen und entpacken download Ausgewählte Tabellenblätter als eigene Arbeitsmappen speichern download
Arbeitsmappe durchblättern download Namen einer Arbeitsmappe einlesen download
Inhalt einer Arbeitsmappe als Mail senden (ohne die Mappe selbst) download Beim Schließen der Arbeitsmappe Datum und Zeit protokollieren download
Beim Öffnen einer Arbeitsmappe WAV-Datei abspielen download Arbeitsmappe zeitgesteuert per Email an einen Verteiler versenden download
Beim Öffnen einer Arbeitsmappe neues Symbol in Formatsymbolleiste download Beim Öffnen der Arbeitsmappe bedingt Datum eintragen download
Offene Arbeitsmappen in Dialog listen download Serie von Bereichsnamenteilen einer Arbeitsmappe ändern download
In einer Schleife auf Elemente einer UserForm zugreifen download