wie kann ich im programm als erste aktion eine befehlsausführung(ohne drücken eines befehlsknopfs oder ä.) erzwingen, z.b. range(„a1“).select?
es grüß euch
nikodemo
wie kann ich im programm als erste aktion eine befehlsausführung(ohne drücken eines befehlsknopfs oder ä.) erzwingen, z.b. range(„a1“).select?
es grüß euch
nikodemo
Genau, mit
Sub Auto\_Open()
Range("A1").Select
End Sub
geht das (vergiss das „Select“ nicht!). Da kannst du auch noch beliebige andere Anweisungen einbauen.
Wenn du am Schluss etwas machen willst, baust du ein
Sub Auto\_Close()
... irgendwas ...
End Sub
ein.
Gruss
Laika
Grüezi nikodemo
wie kann ich im programm als erste aktion eine
befehlsausführung(ohne drücken eines befehlsknopfs oder ä.)
erzwingen, z.b. range(„a1“).select?
Ich glaube, das hatten wir hier erst kürzlich diskutiert.
Öffne den VBA-Editor und klicke im Projektexplorer in der geöffneten Mappe doppelt auf ‚Dies Arbeitsmappe‘. Füge dann die folgenden Zeilen ein:
Workbook\_Open()
End Sub
Dazwischen fügst Du deinen Cod ein - dieser wird immer beim öffnen der Mappe ausgeführt.
Mit freundlichen Grüssen
Thomas Ramel
Grüezi Laika
Sub Auto_Open()
Sub Auto_Close()
Nur zur Vervollständigung:
Diese beiden Ereignisse (die in einem allgemeinen Modul stehen mussten) wurden in xl97 abgelöst durch die Arbeitsmappen-Ereignisse
Workbook_Open()
Workbook_Close()
die in ‚Diese Arbeitamappe‘ gehören (zusammen mit weiteren Ereignis-Codes).
Die ‚Auto‘-Makros werden nur noch aus Gründen der Kompatibililtät unterstützt und sollten durch die neuen Ereignis-Codes ersetzt werden.
Mit freundlichen Grüssen
Thomas Ramel
hi, thomas,
ich habe folgenden code eingegeben:
Private Sub Workbook_open()
Application.DisplayFullScreen = True
Range(„a1“).Select
Range(„b1“).Select
End Sub
das funktioniert nicht.
die sequenz wird beim öffnen der mappe (oder tabelle) nicht abgearbeitet.
es grüßt dich
nikodemo
was mache ich falsch?
Grüezi Nikodemo
ich habe folgenden code eingegeben:
Private Sub Workbook_open()
Application.DisplayFullScreen = True
Range(„a1“).Select
Range(„b1“).Select
End Subdas funktioniert nicht.
die sequenz wird beim öffnen der mappe (oder tabelle) nicht
abgearbeitet.was mache ich falsch?
Hmmm, ich habe die Zeilen gerade eben getestet - das tut wunderbar.
*Wo genau* hast Du den Code denn gespeichert:
[] allgemeines Modul
[] Tabelle 1
[x] Diese Arbeitsmappe
Hast Du die Makros beim öffnen der Mappe auch aktiviert?
Welche Excel-Version verwendest Du denn?
Mit freundlichen Grüssen
Thomas Ramel
hallo, thomas…
meine excel - version ist excel 2003.
wo der code abgespeichert wird weis ich (als neuling) einfach nicht.
komm ich im moment auch nicht dahinter, weil mir der unterschied zwischen modul, projekt und so weiter noch nicht klar ist.
wahrscheinlich ist das ganze für mich noch zu hoch.
trotzdem vielen dank.
gruß
Nikodemo
Grüezi Nikodemo
meine excel - version ist excel 2003.
Ok, Danke - es geht mir hier um die MakroSicherheit, die ab xl2007 ein wenig anders geregelt ist.
wo der code abgespeichert wird weis ich (als neuling) einfach
nicht.
Das ist aber elementar, Nikodemo, denn nur so kannst Du effizient und vor allem erfolgreich umsetzen was Du angeboten bekommst.
komm ich im moment auch nicht dahinter, weil mir der
unterschied zwischen modul, projekt und so weiter noch nicht
klar ist.wahrscheinlich ist das ganze für mich noch zu hoch.
Jeder hat mal klein angefangen, das ist absolut keine Schande.
Eigne dir die Grundlagen an, dann steigst Du rasch dahinter welcher Code wohin muss. Ein seht guter Einstieg in diese Grundlagen ist die folgende PDF-Broschüre der Fernuni Hagen:
http://www.fernuni-hagen.de/zmi/katalog/B012.shtml
Prinzipiell gibt es zwei Arten von Codes in Excel-VBA:
1.)
Code der über einen Button oder den Makro-Dialog gestartet wird (Public Sub()) oder über die Eingabe der Funkion in eine Excel-Zelle (Function()). Dieser gehört in ein Modul der Mappe, das im VBA-Editor über Einfügen/Modul erzeugt wird.
2.)
Code, der durch bestimmte Ereignisse in Excel automatisch ausgelöst wird. Diese Ereignisse können nur in einem einzelnen Tabellenblatt oder über die gesamte Mappe auftreten und ‚abgefangen‘ werden. Je nach Anforderung werden diese Codes dann in ‚Diese Arbeitsmeppe‘ oder dem entsprechenden Tabellenblatt gespeichert.
Das ist nur ein grober Abriss zur Unterscheidung, näheres wird in der entsprechenden PDF-Broschüre zu finden sein und/oder auch in den folgenden Links:
http://www.online-excel.de/excel/singsel_vba.php?f=44
$http://www.online-excel.de/excel/singsel_vba.php?f=100
Mit freundlichen Grüssen
Thomas Ramel
Hallo NikoDemo.
wo der code abgespeichert wird weis ich (als neuling) einfach
nicht.
Mal ein kurzer Versuch einer bildlichen Beschreibung.
Wenn du den Editor geöffnet hast, dann müssten am linken Rand zwei „Fenster“ zu sehen sein. Im oberen hast du einen Art Ordnerbaumsystem der geöffneten EXCEL-Dateien. Der Hauptstamm ist die EXCEL-Datei und darunter findest du dann ‚Diese Arbeitsmappe‘ gefolgt von den Tabellenblättern in der Datei. Darunter kommen die Module, sofern die EXCEL-Tabelle welche enthält.
Grüße.