Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

VBA Excel: Sub FileSaveAs() - Überschreibt die Methode nicht

Mitglied: Interspirit

Interspirit (Level 1) - Jetzt verbinden

08.03.2007, aktualisiert 09.03.2007, 10415 Aufrufe, 11 Kommentare

Hallo zusammen,

habe ein VBA-Projekt (Excel 2002 Deutsch) in dem ich die Methode

Sub FileSaveAs()
...
...
End Sub

einfüge, um zu bestimmen was passieren soll, wenn ich auf "Datei/Speichern unter" klicke. Hab schon sehr intensiv gegoogelt und irgendwie funktioniert das bei allen einwandfrei nur bei mir nicht.
Bei mir kommt weiterhin der ganz "normale" Speichern-Unter Dialog. Habe folgendes ausprobiert:

Sub FileSaveAs()
MsgBox "Test"
End Sub

Public Sub FileSaveAs()
MsgBox "Test"
End Sub

Hab auch schon "Sub DateiSpeichernUnter()" versucht, nichts geht. Er öffnet immer den Standard-Dialog.

Habe in dem Projekt ein Modul in dem ich diese Methode neu definiere...

Kann mir jemand helfen?

Vielen Dank im Voraus )

MFG
Tom
Mitglied: Diskilla
08.03.2007 um 09:27 Uhr
Ähm.....
Vielleicht solltest du erklären was du ANSTATT des "normalen" Speichern unter Dialogs willst. Für mich sieht das nämlich so aus, dass du genau den aufrufst und sonst nix.
Gib doch ma bitte nen Tip
Bitte warten ..
Mitglied: Interspirit
08.03.2007 um 09:39 Uhr
Hi du...
Danke für deine Antwort!

Nein, will einen Wert vorgeben, wie die zu speichernde Datei heißen soll

Sub FileSaveAs()

With Dialogs(wdDialogFileSaveAs)
.Name = "xxx.xls"
.Format = wdFormatDocument
.Show
End With

End Sub

Hilft dir das weiter?
Bitte warten ..
Mitglied: Biber
08.03.2007 um 10:14 Uhr
Moin Interspirit,

tjy, so schonend wie möglich:
Obwohl VBA aus dem Hause des sympathischen Weltmarktführers höchstselbst kommt, ist es nicht so ganz richtig objektorientiert, klassen- und methodentauglich.

Das Geraffel, was dort hinterlegt werden kann, sind halt letzten Endes Funktionen und Prozeduren, wie man/frau das halt von einem BASIC-Enkel erwarten kann.

Als nix mit vererbten oder überschriebenen Methoden.
Vielleicht unter 512-Bit-Architektur mal.... aber jetzt nicht.

-->Konsequenz:
Entweder diese Function MyFileSaveAs() nenne und auch so aufrufen, oder, wenn sie denn auch nostalgischen oder ästhetischen Gründen FileSaveAs() heißen soll, dann beim Aufruf den Präfix "Modul1." (oder wo sie drin ist) voranstellen.

Gruss
Biber
Bitte warten ..
Mitglied: Interspirit
08.03.2007 um 10:43 Uhr

-->Konsequenz:
Entweder diese Function MyFileSaveAs() nenne und auch so aufrufen, oder, wenn sie denn auch nostalgischen oder ästhetischen Gründen FileSaveAs() heißen soll, dann beim Aufruf den Präfix "Modul1." (oder wo sie drin ist) voranstellen.


Hallo,

danke für deine Antwort!

Du meinst quasi ich soll die Funktion FileSaveAs so aufrufen?

Modul1.FileSaveAs() ??

Das Problem ist nur, ich rufe die Funktion gar nicht explizit auf. Sie wird ja automatisch ausgeführt sobald ich auf Speichern-Unter klicke...

Oder verstehe ich dich jetzt falsch?!
Bitte warten ..
Mitglied: Biber
08.03.2007 um 10:51 Uhr
Nein, Du verstehst mich schon richtig.
Das Problem ist nur, ich rufe die Funktion gar nicht explizit auf
Dann ist es schwierig....

Dann wäre der (theoretische) Weg IMHO:
Um zu verhindern, dass die Funktion/"Methode" FileSaveAs() aus dem Modul "Visual Basic for Applications" als erstes, als Standard aufgerufen wird, müsste unter Extras->Verweise als allerallererstes ein Modul angegeben sein, das eine Function FileSaveAs() mit den gleichen Aufrufkonventionen enthält.

Ist zwar auch kein Hexenwerk, aber im Verhältnis doch so aufwändig, dass ich mir die Aufwand/Nutzen-Relation noch mal in Ruhe angucken würde.

[Ist aber nur mein Kenntnisstand - vielleicht geht es auch vieeeeeeeeeeel stressärmer. Weitere Kommentare abwarten.]

Gruss
Biber
Bitte warten ..
Mitglied: Biber
08.03.2007 um 10:51 Uhr
--
Bitte warten ..
Mitglied: Interspirit
08.03.2007 um 10:59 Uhr
Der Clou ist ja dass es die Funktion "FileSaveAs" schon gibt.
Diese wird aufgerufen wenn ich "Datei/'Speichern Unter" klicke. In dieser Funktion wird dann dieser Speichern-Dialog aufgerufen.

Wenn ich diese Funktion neu definiere (genau der Name wie es sie schon gibt) wird sie überschrieben und meine Funktion ausgeführt.

Nun ja, hab wie gesagt schon intensiv gegoogelt und es gibt haufenweise menschen die das so praktizieren. Bei mir funktionierts eben nicht.

Vielleicht hab ich die Funktion an falscher Stelle definiert?! (Das war mein erster Gedanke)
Weiß aber nicht wo ich das sonst definieren sollte... Hmmm
Menno
Bitte warten ..
Mitglied: bastla
08.03.2007 um 14:38 Uhr
Hallo Interspirit!

Anscheinend hat das schon einmal jemand geschafft - siehe hier ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
08.03.2007 um 15:12 Uhr
@bastla

Das ist allerdings viel einfacher, als ich befürchtet hatte.
Wieder was gelernt...

Gruss
Biber
Bitte warten ..
Mitglied: bastla
08.03.2007 um 15:15 Uhr
@Biber

Ich kannte das bisher auch nur für Word ...

Grüße
bastla
Bitte warten ..
Mitglied: Interspirit
09.03.2007 um 13:10 Uhr
Hallo Bastla,

vielen Dank für deinen Hinweis - werd das dann doch gleich mal testen!
Da hätt ich ewig in die falsche Richtung gesucht!

Merci nochmal )
Bitte warten ..
Ähnliche Inhalte
Microsoft Office

Excel Marko "private sub" bearbeiten

gelöst Frage von ArnoNymousMicrosoft Office2 Kommentare

Hallo, ich stehe auf dem Schlauch. Habe hier eine Exceltabelle mit einem Makro, dass mittels "private sub" nicht sichtbar ...

Microsoft Office

Excel VBA vbyesno

gelöst Frage von Florian86Microsoft Office2 Kommentare

Hallo, ich habe folgenden Code Sub AbgerundetesRechteck1_Klicken() Dim wksOrig As Worksheet Dim wksStore As Worksheet Dim lngLastRow As Long ...

VB for Applications

Excel VBA Code

gelöst Frage von specialuserVB for Applications2 Kommentare

Hallo zusammen, Hab hier einen Button in einer Excel mit Makros erstellt. Der Button hat die Funktion aus der ...

Microsoft Office

Excel VBA - PDF

Frage von SabineTMicrosoft Office3 Kommentare

Hallo Zusammen, ich habe ein pdf, über welches ich bereits die OCR Texterkennung laufen lassen habe. Jetzt möchte ich ...

Neue Wissensbeiträge
Windows Mobile

Support für Windows Mobile endet im Dezember 2019

Information von transocean vor 1 TagWindows Mobile

Moin, Microsoft empfiehlt als Alternative den Umstieg auf iOS oder Android, wie man hier lesen kann. Gruß Uwe

Internet

Kommentar: Bundesregierung erwägt Ausschluss von Huawei im 5G-Netz - Unsere Presse wird immer sensationsgieriger

Information von Frank vor 3 TagenInternet5 Kommentare

Hier mal wieder ein schönes Beispiel für fehlgeleiteten Journalismus und Politik zugleich. Da werden aus Gerüchten plötzlich Fakten, da ...

Windows 10

Netzwerk-Bug in allen Windows 10-Versionen durch Januar 2019-Updates

Information von kgborn vor 3 TagenWindows 101 Kommentar

Nur ein kurzer Hinweis für Admins, die Windows 10-Clients im Portfolio haben. Mit den Updates vom 8. Januar 2019 ...

Windows 10

Windows 10 V1809: Rollout ist gestartet - kommt per Windows Update

Information von kgborn vor 4 TagenWindows 102 Kommentare

Eine kurze Information für die Admins, die Windows 10 im Programm haben. Microsoft hat die letzte Baustelle (die Inkompatibilität ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Bekannte Drosselungen bei Providern ?
Frage von HenereLAN, WAN, Wireless15 Kommentare

Servus zusammen, in bereits angefangen, aber ich hoffe dass der Beitrag hier mehr Informationen bringt. Sind Portdrosselungen bzw gezielte ...

LAN, WAN, Wireless
Temporäre WLAN Verbindung für AD-Login
Frage von Christian.WidauerLAN, WAN, Wireless15 Kommentare

Hallo zusammen, ich weiß leider nicht unter welchem Begriff ich dafür suchen muss, daher habe ich bisher leider nichts ...

Netzwerkmanagement
Reverse Proxy für TCP und UDP Anfragen
gelöst Frage von flxklsNetzwerkmanagement13 Kommentare

Hallo zusammen, ich besitze einen Rootserver, der nur eine öffentliche IP besitzt und auf dem mehrere VMs laufen. Da ...

E-Mail
Rechtssichere Archivierung von emails
Frage von gerd33E-Mail11 Kommentare

Hallo zusammen, bin gerade dabei, eine revisions- und rechtsichere email-archivierung aucf meinem Server zu projektieren. Da eigentlich nur ich ...