Microsoft Excel

Herbers Excel/VBA-Archiv

Arbeitsblattwechsel durch Formular unterbinden

Betrifft: Arbeitsblattwechsel durch Formular unterbinden von: J.
Geschrieben am: 21.02.2008 08:04:42

Hallo
Ich habe ein Formular, das durch drücken eines Buttons auf Tabellenblatt 4 gestartet wird.
Sobald das Formular erscheint, wechselt Excel auf Tabellenblatt 2 (ich vermute mal,weil dort die im Formular eingegebenen Daten gespeichert werden). Kann ich das irgendwie unterbinden, sodass die ganze Zeit über Arbeitsblatt 4 im Hintergrund angezeigt wird? Denn eigentlich gehen die Daten von Arbeitsblatt 2 keinen etwas an.

  

Betrifft: AW: Arbeitsblattwechsel durch Formular unterbinden von: J.
Geschrieben am: 21.02.2008 08:10:44

Noch zur Info,
Ich sehe gerade , dass ich bei allen Change Ereignissen (zb bei den Comboboxen)

Worksheets("Tabellenblatt2").Activate

Hinzugefügt habe, weil das Formular die Daten sonst einfach auf dem gerade angezeigten Arbeitsblatt gespeichert hat. Wenn es also nicht möglich ist, das Tabellenblattwechseln zu unterbinden, dann bräuchte ich zumindest eine gute Möglichkeit das ganze auszublenden.


  

Betrifft: AW: Arbeitsblattwechsel durch Formular unterbinden von: Ramses
Geschrieben am: 21.02.2008 08:14:34

Hallo

Weshalb ein Wechsel ?
Das ist nicht nötig.
Entweder du schreibst in die RowSource Eigenschaft der Combobox "=Tabellenblatt2!A1:A10", bzw. deinen Zellbereich wo die Daten stehen, oder du liest den Inhalt der Combobox per VBA ein

Gruss Rainer


  

Betrifft: AW: Arbeitsblattwechsel durch Formular unterbinden von: Ramses
Geschrieben am: 21.02.2008 08:11:49

Hallo

EXCEL wechselt nicht von sich aus das Tabellenblatt.
Zeig mal den Code mit dem du das UF aufrufst,... allenfalls ist auch noch im UF_Initialize-Ereignis ein Wechsel auf das Sheet.

Sheets("Deine Tabelle").Select

oder so ähnlich

Gruss Rainer


  

Betrifft: AW: Arbeitsblattwechsel durch Formular unterbinden von: J.
Geschrieben am: 21.02.2008 08:15:51

hmm ich denke mal du hattest meinen Eintrag noch nicht gelesen, als du das geschrieben hast.

Ich hoffe du kannst mir mit den zuletzt geschriebenen Infos weiterhelfen.


  

Betrifft: Siehe anderen Beitrag o.w.T. von: Ramses
Geschrieben am: 21.02.2008 08:17:08

...


  

Betrifft: AW: Siehe anderen Beitrag o.w.T. von: J.
Geschrieben am: 21.02.2008 08:21:35

Das Problem ist, dass die Combobox mit Daten von Arbeitsblatt 1 gefüllt wird, und diese dann in einer Zelle auf Datenblatt 2 zwischenspeichert. Deshalb dachte ich, ich müsste immer noch vor dem schreiben in Tabellenblatt 2 "Worksheets("Tabellenblatt2").Activate" schreiben. Ich meine zu wissen, dass ohne diesen Zusatz die Daten ins gerade angewählte Arbeitsblatt geschrieben wurden, was mir natürlich garnichts bringt.


  

Betrifft: AW: Siehe anderen Beitrag o.w.T. von: Ramses
Geschrieben am: 21.02.2008 08:38:38

Hallo

Dann schreib halt auch noch die verlinkte Zelle in der Weise

Eigenschaft Combobox: Controlsource =Tabelle2!A1

Dann ist es echt egal welche Tabelle aktiv ist. EXCEL weiss ja wo der Wert hin soll

Gruss Rainer


  

Betrifft: AW: Siehe anderen Beitrag o.w.T. von: J.
Geschrieben am: 21.02.2008 08:44:04

Hallo
Dann erhalte ich die Fehlermeldung "Objekt unterstützt diese Eigenschaft oderMethode nicht!"

Kann das vlt daran liegen, dass diese direkte Verknüpfung nicht mit großen Zellbereichen klarkommt?
Bei mir ist das nämlich nicht Zelle A1 wie in deinem Beispiel,

Tabelle2!A1

sonder Zelle AA1

Tabelle2!AA1

Könnte daran das Problem liegen?


  

Betrifft: AW: Siehe anderen Beitrag o.w.T. von: Ramses
Geschrieben am: 21.02.2008 08:46:41

Hallo

Das ist unerheblich.
Ich hatte das gerade getestet und es funktioniert.

WANN erhältst du die Fehlermeldung ?
Beim Eintrag des Verweises in die Combobox Eigenschaften oder bei Auswahl eines Wertes in der Combobox

Gruss Rainer


  

Betrifft: AW: Siehe anderen Beitrag o.w.T. von: J.
Geschrieben am: 21.02.2008 08:55:22

Beim auswählen des Wertes, also dann, wenn er den Wert eigentlich in die Zelle schreiben soll.


  

Betrifft: AW: Siehe anderen Beitrag o.w.T. von: Ramses
Geschrieben am: 21.02.2008 09:00:46

Hallo

Dann hat das nichts mit der Verknüpfung zu tun, sondern da ist noch was anderes Faul.
Geh mal im Einzelschrittmodus durch den Code und schau mal wo er dann hängen bleibt, oder wenn du das auch nicht kannst, lad mal die Tabelle hoch

Gruss Rainer


  

Betrifft: AW: Siehe anderen Beitrag o.w.T. von: J.
Geschrieben am: 21.02.2008 09:31:17

so, bin jetzt mal im Einzelschritt Modus durch den Quelltext gegangen. Und nachdem Ich in der betroffenen Combobox eine Auswahl treffe, bringt der den Fehler erst in der Zeile, in der er das abspeichern soll.Hier mal der Code der Combobox

Private Sub cboAchse_Change()
    Worksheets("sonstiges").Activate
    Tabelle2!AA1 = cboAchse.Value
End Sub



In der dritten Zeile davon taucht der Fehler auf. Kann das evtl daran liegen, dass ich die Zeile

Worksheets("sonstiges").Activate

noch da drin stehen habe?


  

Betrifft: AW: Siehe anderen Beitrag o.w.T. von: Ramses
Geschrieben am: 21.02.2008 11:46:48

Hallo

Hast du eigentlich gelesen WAS ich dir geschrieben habe ?
Nein, du machst und denkst nicht.

Private Sub cboAchse_Change()
Worksheets("Tabelle2").Range("AA1") = cboAchse.Value
End Sub



Gruss Rainer


 

Beiträge aus den Excel-Beispielen zum Thema "Arbeitsblattwechsel durch Formular unterbinden"