Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen

Zellen inhalt als Variabel übergeben

Betrifft: Zellen inhalt als Variabel übergeben von: Falo
Geschrieben am: 29.09.2014 18:42:46

Hallo zusammen,
ich möchte mit einem Makro, eine Datei öffnen und ein Makro ausführen und dann schließen.
Der Pfad der zu öffnenden Datei, steht in Zelle. (A11)
hat jemand einen Tipp für mich

Mit freundlichen Grüßen aus dem Sauerland
Olaf


  

Betrifft: AW: Zellen inhalt als Variabel übergeben von: yummi
Geschrieben am: 30.09.2014 09:49:46

Hallo Olaf,

dim wkb as workbook

set wkb = Workbooks.Open(ActiveSheet.Cells(1,11).value)
dein Makro
Application.DisplayAlerts = False
wkb.Close savechanges:=False
Set wkb = Nothing
Application.DisplayAlerts = True
Mit dim wks as worksheet
Set wks = wkb.Sheets("Tabelle1")
kannst Du ein Sheet der geöffneten Datei festlegen und mit wks ansprechen.

Gruß
yummi


  

Betrifft: AW: Zellen inhalt als Variabel übergeben von: Falo
Geschrieben am: 30.09.2014 12:14:33

Hallo yummi,
Tut mir leid, aber kann ich nichts mit anfangen, kannst Du mir das nicht besser erklären.


Tabellenblatt : System
Zelle : A11

Mit freundlichen Grüßen aus dem Sauerland
Olaf


  

Betrifft: AW: Zellen inhalt als Variabel übergeben von: yummi
Geschrieben am: 30.09.2014 12:47:36

Hallo Olaf,

was verstehst du denn nicht?
Den code selbst oder was du mit dem code machen sollst?

Gruß
yummi


  

Betrifft: AW: Zellen inhalt als Variabel übergeben von: Falo
Geschrieben am: 30.09.2014 13:29:08

Hallo yummi,
ich habe mich falsch ausgedrückt, ich bekomme eine Fehlermeldung 400 .

Private Sub CommandButton5_Click()
Dim wkb As Workbook

Set wkb = Workbooks.Open(ActiveSheet.Cells(1, 11).Value)
'dein Makro
Application.DisplayAlerts = False
wkb.Close savechanges:=False
Set wkb = Nothing
Application.DisplayAlerts = True

'Mit dim wks as worksheet
Set wks = wkb.Sheets("System")
End Sub



  

Betrifft: AW: Zellen inhalt als Variabel übergeben von: yummi
Geschrieben am: 30.09.2014 14:11:24

Hallo Olaf,

die fehlermeldung kann 2 Ursachen haben:

1:
was steht denn in deiner zelle k1?
exitiert eine Datei in dem selben verzeichnis mit dem namen? (der inhalt der zelle muss auch die dateiendung beinhalten, so wie es jetzt ist, sonst musst du

Set wkb = Workbooks.Open(ActiveSheet.Cells(1, 11).Value & ".xls") 'für dateiendung xls

schreiben.

Das was du beschreibst, hört sich so an, als wenn auf die geforderte Datei nicht zugegrifffen werden kann.

oder
2:
bekommst du die fehlermeldung später?

dieser teil
Set wks = wkb.Sheets("System")
muss direkt hinter die zeile mit open kommen.

dann kannst du z.B. mit wks.sheet(1,1) auf die Zelle A1 in der geöffneten Datei zugreifen.
so wie es momentan ist löscht du das wkb durch das schliessen der datei wieder und danach willst du erst auf das sheet zugreifen.
Hier Set wks = wkb.Sheets("System"), doch wkb ist zu dem Zeitpunkt schon nothing, das geht nicht.

Private Sub CommandButton5_Click()
Dim wkb As Workbook
Dim wks as Worksheet

Set wkb = Workbooks.Open(ActiveSheet.Cells(1, 11).Value)   
Set wks = wkb.Sheets("System")

'dein Makro, in dem du mit wks.cells oder range oder was immer du machen willst auf das Sheet  _
System der geöffneten Datei zugreifen kannst

Application.DisplayAlerts = False
wkb.Close savechanges:=False
Set wkb = Nothing
Application.DisplayAlerts = True


End Sub

ich hoffe, es ist etwas deutlciher geworden

Gruß
yummi


  

Betrifft: AW: Zellen inhalt als Variabel übergeben von: Falo
Geschrieben am: 01.10.2014 18:30:39

Hallo yummi,
Danke für deine Hilfe,ich habe es jetzt anders geregelt

LG
Olaf



 

Beiträge aus den Excel-Beispielen zum Thema "Zellen inhalt als Variabel übergeben"