Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Excel
  Symbolleiste in XLS verteilen und ändern

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Symbolleiste in XLS verteilen und ändern (2286 mal gelesen)
Peter2
Ehrenmitglied V.I.P. h.c.




Sehen Sie sich das Profil von Peter2 an!   Senden Sie eine Private Message an Peter2  Schreiben Sie einen Gästebucheintrag für Peter2

Beiträge: 3701
Registriert: 15.10.2003

erstellt am: 20. Okt. 2011 18:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ich habe eine XLS, die hat ein paar einfache Makros und eine Symbolleiste, welche zwei der Makros aufruft. Die lag im Netzwerk unter p:\\excel2006\test.xls. Jeder, der die Datei öffnete, bekam die Makros und die Symbolleiste.

Jetzt habe ich die Datei verschoben nach p:\\excel2011\test.xls, sonst unverändert belassen. Jeder, der die Datei öffnet und die Symbolleiste verwendet, bekommt jetzt die Fehlermeldung:

Code:
"Kann das Makro p:\\excel2006\test.xls!makro1 nicht finden!"

Lösung:
Man muss die XLS schliessen, dann die Symbolleiste löschen, die XLS wieder öffnen - fertig.

Vermuteter Hintergrund:
Anscheinend werden beim ersten Öffnen der XLS die Informationen in den aktuellen PC übernommen und dann so belassen, egal was mit der XLS passiert. Auch wenn der Ersteller den Makro ganz explizit direkt aufruft "makro1", wird der Pfad dann irgendwie ergänzt zu "p:\\excel2006\test.xls!makro1".

Frage:
- Muss das so sein?
- Wie kann man das sauber vorbereiten?
- Wie kann ich das reparieren, ohne dass ich alle MA auffordern muss, ihre Symbolleiste zu löschen?
- Was mache ich, wenn ich in der Symbolleiste noch einen Button ergänzen will? Das ganze Spiel wieder von vorne?

Schönen Abend noch

Peter

------------------
Für jedes Problem gibt es eine einfache Lösung.
Die ist aber meistens falsch. ;-)

[Diese Nachricht wurde von Peter2 am 20. Okt. 2011 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice

erstellt am: 20. Okt. 2011 20:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Peter2 10 Unities + Antwort hilfreich

Guten Abend Peter2,

vor vier Jahren hatte ich ein Phänomen mit verschwundenen Symbolleisten. Weil es soooo lang her ist, weiß ich leider wenig aktuelles dazu  , nur soviel: Die Einstellungen der Symbolleisten (bis xls 2003?) werden in einer .xlb im User-Verzeichnis abgelegt.

Zum Thema Symbolleiste gab's schon einiges hier im Forum. Weitere Stichworte: PERSONL.XLS/XLA, AddIn. Beide Links enthalten weiterführende Links...

Gegenfrage: Makros und Symbolleiste sind in der Mappe test.xls gespeichert? Mich wundert auch, dass ein reines Verschieben der Mappe von 2006 --> 2011 zu einem solchen Verhalten führt.

Was passiert denn, wenn Du (nur Du!) in der "neuen" Mappe (Verzeichnis 2011) die Symbolleisten anpasst - hinter den Schaltflächen sollte der Pfad zum Makro stehen. Kannst Du den 2006...-Kram einfach entfernen? Warum auch immer Excel sich das so "gemerkt" hat, vielleicht lässt sich das ja umgehen? Für weitere Schaltflächen innerhalb der Mappe sollte so etwas (eigentlich) nicht passieren.

Lösung interessiert mich - Viel Glück  !

------------------
DIN1055.de  |  Lastannahmen für Anwender

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thomas Harmening
Moderator
Arbeiter ツ




Sehen Sie sich das Profil von Thomas Harmening an!   Senden Sie eine Private Message an Thomas Harmening  Schreiben Sie einen Gästebucheintrag für Thomas Harmening

Beiträge: 2897
Registriert: 06.07.2001

Das Innerste geäussert
und aufs Äusserste verinnerlicht

erstellt am: 20. Okt. 2011 22:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Peter2 10 Unities + Antwort hilfreich

  
Zitat:
Original erstellt von Peter2:
Die lag im Netzwerk unter p:\\excel2006\test.xls. Jeder, der die Datei öffnete, bekam die Makros und die Symbolleiste.

Jetzt habe ich die Datei verschoben nach p:\\excel2011\test.xls, sonst unverändert belassen. Jeder, der die Datei öffnet und die Symbolleiste verwendet, bekommt jetzt eine Fehlermeldung


so ein Verhalten kenne ich irgendwie nicht...

Aber da bei dir XL den Pfad p:\\excel2006\ gemerkt hat, versuche mal diese Datei wieder in den Ordner p:\\excel2006\ zu verschieben, die Datei aus diesem Ordner zu öffnen und aus Excel heraus diese Datei auf p:\\excel2011\test.xls zu speichern. Vielleicht biegt XL diese Eigenart um?

Ansonsten seht im Code vielleicht die Adressierung auf p:\\excel2006\?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Comos User
Mitglied



Sehen Sie sich das Profil von Comos User an!   Senden Sie eine Private Message an Comos User  Schreiben Sie einen Gästebucheintrag für Comos User

Beiträge: 112
Registriert: 23.03.2010

erstellt am: 21. Okt. 2011 07:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Peter2 10 Unities + Antwort hilfreich

Hallo Namensvetter,


Zitat:
Vermuteter Hintergrund: ...
ja vermuten kann man viel, aber solange aus der Vermutung keine Gewissheit geworden ist ergeben deine Fragen keinen Sinn.

Da meine Glasßkugel gerade in der Werkstatt ist, muß du schon die in der test.xls (welch grausliger Name für eine produktive Datei) enthaltenen Makros zur Verfügung stellen.
Dann könnte ich auch die Fragen beantworten.

Gruß
Peter

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Peter2
Ehrenmitglied V.I.P. h.c.




Sehen Sie sich das Profil von Peter2 an!   Senden Sie eine Private Message an Peter2  Schreiben Sie einen Gästebucheintrag für Peter2

Beiträge: 3701
Registriert: 15.10.2003

Win 10/64 Pro
AutoCAD MAP 3D 2018 / 2023
BricsCAD 22

erstellt am: 24. Okt. 2011 16:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Symbolleistentest.zip

 
So, hier eine Musterdatei.

Drinnen sind zwei Mini-makros, die nur Hallo1 und hallo 2 schreiben. Dazu gibt es auch die Symbolleiste "hallo-test". Die Datei wurde auf "d:\" erstellt und die Makros wurden ohne Pfad den Symbolen zugewiesen.

Testvorschlag:
- Datei auf D:\ legen
- Datei öffnen - Symbolleiste erscheint
- Makros probieren (oder auch nicht ...) - schliessen - speichern oder auch nicht..
- Symbolleiste bleibt erhalten
- Datei irgendwohin verschieben, dann wieder öffnen
- Makros probieren
--> Fehlermeldung erscheint: "Kann d:\... nicht öffnen"
- Symbolleiste anschauen: Die Makroaufrufe wurden absolut (inkl. Pfade)
- Datei schliessen
- über "Anpassen" die Symbolleiste löschen
- Datei öffnen, Symbolleiste erscheint
- Makro probieren -> es klappt wieder.
- Datei schliessen und woander hinschieben -> klappt wieder nicht

Also scheint sich die Verknüpfung zum Makro in absolute Pfade umzuwandeln und in "Excel" (also nicht in der Datei) abzuspeichern.


Grüsse

Peter

------------------
Für jedes Problem gibt es eine einfache Lösung.
Die ist aber meistens falsch. ;-)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thomas Harmening
Moderator
Arbeiter ツ




Sehen Sie sich das Profil von Thomas Harmening an!   Senden Sie eine Private Message an Thomas Harmening  Schreiben Sie einen Gästebucheintrag für Thomas Harmening

Beiträge: 2897
Registriert: 06.07.2001

Das Innerste geäussert
und aufs Äusserste verinnerlicht

erstellt am: 24. Okt. 2011 18:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Peter2 10 Unities + Antwort hilfreich

du könntest die Symbolleiste auch beim Start immer erst erzeugen.

Code:
Private Sub Workbook_Open()
Dim symb As CommandBar
Dim AA As Object
On Error Resume Next
Set symb = Application.CommandBars.Add("TEST", Position:=msoBarTop, Temporary:=True)
With symb
.Left = 0
.Visible = True
End With
Set AA = Application.CommandBars("TEST").Controls.Add(Type:=msoControlButton)
With AA
.Style = msoButtonIcon
.FaceId = 47
.TooltipText = "Hallo 1"
.BeginGroup = True
.OnAction = "hallo1"
End With
Set AA = Application.CommandBars("TEST").Controls.Add(Type:=msoControlButton)
With AA
.Style = msoButtonIcon
.FaceId = 33
.TooltipText = "Hallo 2"
.BeginGroup = True
.OnAction = "hallo2"
End With
End Sub

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Peter2
Ehrenmitglied V.I.P. h.c.




Sehen Sie sich das Profil von Peter2 an!   Senden Sie eine Private Message an Peter2  Schreiben Sie einen Gästebucheintrag für Peter2

Beiträge: 3701
Registriert: 15.10.2003

erstellt am: 24. Okt. 2011 19:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Zitat:
Original erstellt von Thomas Harmening:
du könntest die Symbolleiste auch beim Start immer erst erzeugen....

Das werde ich auf jeden Fall im Auge behalten; ebenso den Ansatz, die Makros über Buttons zu starten. Aber die Nachvollziehbarkeit bzw. der Hintergrund meines Problems würde mich dennoch interessieren.

Peter

------------------
Für jedes Problem gibt es eine einfache Lösung.
Die ist aber meistens falsch. ;-)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz