Herbers Excel-Forum - das Archiv

makro fehler?

Bild

Betrifft: makro fehler?
von: dieter-j

Geschrieben am: 24.02.2005 12:44:15
hallo Forum, die folgende anweisung soll mir die anfangsbuchstaben in den zellen
b6,c6 usw. in grossbuchstaben setzen- macht es aber nur in Zelle B6
sagt mir jemand warum? habe die zellen auf "text" gestellt; (makro habe ich aus dem forum; die zellangabe habe ich geändert...
danke + gruss dieter;
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B6,C6,B8,B10,C10")) Is Nothing Then
Application.EnableEvents = False
Target = Application.Proper(Target)
Application.EnableEvents = True
End If
End Sub

Private Sub Workbook_Open()
End Sub

Bild

Betrifft: AW: makro fehler?
von: ChrisL

Geschrieben am: 24.02.2005 12:53:34
Hi Dieter
Das geht schon. Vermutlich ist infolge eines Fehlers EnableEvents ausgeschaltet.
Lass mal...
Sub t()
Application.EnableEvents = True
End Sub
laufen.

Bei EnableEvents solltest du darum immer eine Fehlerbehandlung einbauen.
Die "Quick and Dirty"-Methode...

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B6,C6,B8,B10,C10")) Is Nothing Then
On Error Resume Next
Application.EnableEvents = False
Target = Application.Proper(Target)
Application.EnableEvents = True
End If
End Sub


Gruss
Chris
Bild

Betrifft: AW: makro fehler?
von: dieter

Geschrieben am: 24.02.2005 12:59:58
hi chrisL,
>Lass mal...
Sub t()
Application.EnableEvents = True
End Sub
laufen sagt mir leider gar nix....
habe deinen vorschlag hier
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B6,C6,B8,B10,C10")) Is Nothing Then
Application.EnableEvents = False
Target = Application.Proper(Target)
Application.EnableEvents = True
End If
End Sub

eingeben, leider keine änderung.....
gruss dieter
Bild

Betrifft: AW: makro fehler?
von: ChrisL

Geschrieben am: 24.02.2005 13:11:50
Hi Dieter
Sub t()
Application.EnableEvents = True
End Sub
In ein Standardmodul kopieren und einmalig Makro abspielen.

Mein Vorschlag:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B6,C6,B8,B10,C10")) Is Nothing Then
On Error Resume Next
Application.EnableEvents = False
Target = Application.Proper(Target)
Application.EnableEvents = True
End If
End Sub


Gruss
Chris
Bild

Betrifft: AW: makro fehler?
von: dieter-j
Geschrieben am: 24.02.2005 13:24:41
hallo chrisL
ausser makrorecorder kann ich nix...
ich weiss also nicht, was tun mit
...In ein Standardmodul kopieren und einmalig Makro abspielen.
:-(
dieter
Bild

Betrifft: AW: makro fehler?
von: ChrisL
Geschrieben am: 24.02.2005 14:44:25
Alt + F11, einfügen, Modul, Text reinkopieren, abspielen (Play wie Kassettenrekoreder)
Bild

Betrifft: AW: makro fehler?
von: Beni
Geschrieben am: 24.02.2005 14:48:47
Hallo Dieter,
in einem Standartmodul funktioniert dieser Code nicht,
dieser Code muss ins Tabellenmodul, mit rechte Maustaste auf Blattregister/ Code anzeigen.
Gruss Beni
Bild

Betrifft: AW: makro fehler?
von: dieter-j
Geschrieben am: 24.02.2005 15:28:11
hallo beni, dort ist er auch....
links im kopf steht "workbook", rechts "open"
irgendwie zum wimmern...
gruss dieter
Bild

Betrifft: AW: makro fehler?
von: ChrisL

Geschrieben am: 24.02.2005 15:29:17
Hi Beni
Es geht darum EnableEvents wieder einzuschalten:
Sub t()
Application.EnableEvents = True
End Sub

Dieser Code gehört sehr wohl in ein Standardmodul. Betr. WS_Change hast du recht, aber davon war auch nicht die rede.
Gruss
Chris
Bild

Betrifft: AW: makro fehler?
von: Beni
Geschrieben am: 24.02.2005 15:34:24
Hallo Dieter,
wenn links Workbook steht, dann bist Du im Modul der Arbeitsmappe,
links muss Worksheet stehen und rechts Change, dann bist Du im Modul der Tabelle.
Gruss Beni
Bild

Betrifft: AW: makro fehler?
von: dieter-j

Geschrieben am: 24.02.2005 18:52:46
das problem ist-ich wiss nich wohin ich wann dieses
Sub t()
Application.EnableEvents = True
End Sub

schreiben soll...
ich öffne meine excelfile,dann gehe ich neben datei auf das excelsymbol;code anzeigen;
dann habe ich da: "diese arbeitsmappe" und Tabelle1 und Tabelle2; und dann?
wohin mit
Sub t()
Application.EnableEvents = True
End 
Sub ?
und was danach ? blatt schliessen? neustart? 
Sub t() auch wieder irgendwann löschen...?
für mich etwas schwierig...
danke und gruss
dieter

Bild

Betrifft: AW: makro fehler?
von: ChrisL

Geschrieben am: 24.02.2005 21:12:42
Hi Dieter
Also nochmals ganz langsam :-)
Alt + F11 öffnet den VBA Editor
Im Menü - Einfügen - Modul klicken
Code reinkopieren. Diesen Code:
Sub t()
Application.EnableEvents = True
End Sub

VBA Editor schliessen.
In Excel - Menü Extras - Makro - Makros
Makro "t" Ausführen.
EnableEvents ist dadurch wieder eingeschaltet.
-------------------------
Alt + F11, links Doppelklick auf Tabelle...
Der vorhandene Code (Worksheet_Change usw.) durch meinen ersetzen und alles müsste laufen.
Gruss
Chris
 Bild
Excel-Beispiele zum Thema "makro fehler?"
Fehlermeldung #NV ausblenden Fehlermeldung abfangen
Fehler in Workbook_Open-Prozedur abfangen Fehlermeldung #DIV/0! verhindern
Fehler entfernen Fehlermeldung abfangen und in sequentielle Datei schreiben
Fortlaufende Suche unter Vermeidung eines Laufzeitfehlers VBA-Fehlermeldungen auflisten
Alle Zellen mit der #BEZUG!-Fehlermeldung auswählen Zahlenstring mit Formel auslesen und Fehlermeldung verhindern