Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
780to784
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
780to784
780to784
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Hilfe über den Makro

Hilfe über den Makro
12.07.2006 09:30:10
vivi
Hallo,zusammen,
Ich habe eine Frage über meinen Makro. Wie kann ich die Private Makro im Makro eingeben? Ich kann die Problem nicht deutlich erklären, höffentlich können sie mit meine Datei die Probleme vestehen.
https://www.herber.de/bbs/user/35008.xls
Vielen Dank und mfg
vivi

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hilfe über den Makro
12.07.2006 10:09:11
Hugo
Hallo,
dann musst du das Workbook_SheetChange-Ereignis nutzen.
In das Modul "DieseArbeitsmappe":

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim B As Boolean
On Error GoTo Fehler
With Target
B = .Count = 1 And Not Intersect(Target, [K6:BR105]) Is Nothing And _
.Column Mod 2 = 0 And .Row Mod 2 = 1
If B Then
Application.EnableEvents = False
.Value = .Value * .Offset(-1)
End If
End With
Fehler:
Application.EnableEvents = True
End Sub

Hugo
AW: Hilfe über den Makro
12.07.2006 10:30:23
vivi
hallo Hugo
Dank noch mal für deine Hilfe.
Meine Meinung nach ist, kann ich die "Private Makro" im eigentliche Makro eingeben?
Ist "Workbook_Sheetchange" heißt, diese Makro geeignet für ganze Mappe ist?oder?
Wenn ich viele gleiche Mappe erstellen möchte, wie kann ich diese Problem erledigen? Die Leute wollen nicht jedes Mal der Makro neu schrieben.
Dank!Mfg
vivi
Anzeige
AW: Hilfe über den Makro
12.07.2006 11:19:27
fcs
Hallo vivi,
wenn du das Makro wie von Hugo beschrieben im VBA-Editor unter "DieseArbeitsmappe" einfügst, dann ist es für alle Tabellen in der Arbeitsmappe wirksam.
Den Makrocode für das Tabellenblatt durch das Makro erstellen zu lassen ist relativ kompliziert und sollte man möglichst vermeiden. Es könnte auch sein, das Virentestprogramme derartige Makros als virenverdächtigt/verseucht identifizieren.
Wenn das Makro unter "DieseArbeitsmappe" eingefügt ist, dann müssen "die Leute" es auch nicht jedes mal neu schreiben.
Du gibts "den Leuten" die in einer Arbeitsmappe diese Makro zusammen mit dem Makro zum Erstellen der neuen Blätter. Dann hast du alle benötigten Makros weitergegeben.
Du solltest den Vorschlag von Hugo etwas modifizieren, so dass das Makro zum Beispiel nicht in dem Tabellenblatt aktiv ist, in dem der Button "Neues Blatt" ist.
Ich hab dein Berechnungsmakro mal probiert, für Zellen B1 und B2 hat es erst funktioniert, nachdem ich ein paar Änderungen gemacht habe.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim B As Boolean
On Error GoTo Fehler
Select Case Sh.Name
Case "Tabelle1"
'do nothing
Case Else
With Target
B = .Count = 1 And Intersect(Target, [K6:BR105]) Is Nothing And _
.Column Mod 2 = 0 And .Row Mod 2 = 0
If B Then
Application.EnableEvents = False
.Value = .Value * .Offset(-1, 0)
End If
End With
Fehler:
Application.EnableEvents = True
End Select
End Sub

Gruß
Franz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige