Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
300to304
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
300to304
300to304
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Problem mit eigenem Add-In!

Problem mit eigenem Add-In!
30.08.2003 08:00:15
Oliver S.
Moin an alle Frühaufsteher,

ich habe da ein Problem mit einem eigenen Add-In. Dieses Add-In soll die beinhalteten Code (basierend auf einen Code von hajo_Zi) in allen Exceldateien zur Verfügung stellen. Nachfolgend kommt mal der Inhalt des Add-In:

In Dieser Arbeitsmappe steht:

Option Explicit


Private Sub Workbook_Activate()
On Error GoTo neu
If Application.CommandBars("Symbolleiste xyz").Visible = False Then
Application.CommandBars("Symbolleiste xyz").Visible = True
End If
Exit Sub
neu:
Workbook_Open
End Sub



Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Zurück
End Sub



Private Sub Workbook_Open()
Dim cb As CommandBar
Dim CBC As CommandBarButton
Dim I%
On Error Resume Next
Set cb = Application.CommandBars.Add(Name:="Symbolleiste xyz", _
temporary:=True, Position:=msoBarTop)
On Error GoTo 0
If Application.CommandBars("Symbolleiste xyz").Visible = False Then
cb.Visible = True
For I = 1 To 2
Set CBC = cb.Controls.Add(Type:=msoControlButton)
With CBC
.Width = 50                 ' Breite der Schalter
.Style = msoButtonCaption   ' Text auf Schaltfläche
Select Case I
Case 1
.Caption = "Zeilenmarkierung An/Aus"
.OnAction = "Zeilenmarkierung_an_aus"
.TooltipText = "Taste drücken Zeilenmarkierung zu aktivieren oder zu deaktivieren"
Case 2
.Caption = "Ohne Funktion"
.OnAction = ""
.TooltipText = "Hier steht ein Text"
.BeginGroup = True
End Select
End With
Next I
End If
If ActiveCell.Column < 53 Then Auslesen
End Sub



Private Sub Workbook_BeforeClose(Cancel As Boolean)
I = 0
On Error Resume Next
Application.CommandBars("Symbolleiste xyz").Delete
Zurück
End Sub



Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Zurück
If (ActiveCell.Row >= 1 And ActiveCell.Row <= 65000) Then
If ActiveCell.Column < 53 Then Auslesen
End If
End Sub



Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
Zurück
I = 0
End Sub



Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Zurück
If (ActiveCell.Row >= 1 And ActiveCell.Row <= 65000) Then
If ActiveCell.Column < 53 Then Auslesen
End If
On Error GoTo neu
If Application.CommandBars("Symbolleiste xyz").Visible = False Then
Application.CommandBars("Symbolleiste xyz").Visible = True
End If
Exit Sub
neu:
Workbook_Open
End Sub


Sub Zurück()
If I = 0 Then
If StWert(1, 1, 1) <> "" Then
For InI = 1 To 52
If Worksheets(StWert(InI, 3, 3)).Range(StWert(InI, 2, 2)).Interior.ColorIndex = 35 Then
Worksheets(StWert(InI, 3, 3)).Range(StWert(InI, 2, 2)).Interior.ColorIndex = CInt(StWert(InI, 1, 1))
End If
Next InI
End If
End If
End Sub


Sub Auslesen()
If I = 0 Then
For InI = 1 To 52
StWert(InI, 1, 1) = Cells(ActiveCell.Row, InI).Interior.ColorIndex
StWert(InI, 2, 2) = Cells(ActiveCell.Row, InI).Address
StWert(InI, 3, 3) = ActiveSheet.Name
Cells(ActiveCell.Row, InI).Interior.ColorIndex = 35
Next InI
End If
End Sub



Private Sub Workbook_BeforePrint(Cancel As Boolean)
Zurück
End Sub


In Modul1 steht:

Option Explicit
Public I As Integer
Public StWert(53, 3, 3) As String
Public InI As Integer
Sub Zeilenmarkierung_an_aus()
Zurück
If I = 0 Then
I = 1
ElseIf I = 1 Then
I = 0
End If

End Sub

Sub Zurück()
If I = 0 Then
If StWert(1, 1, 1) <> "" Then
For InI = 1 To 52
If Worksheets(StWert(InI, 3, 3)).Range(StWert(InI, 2, 2)).Interior.ColorIndex = 35 Then
Worksheets(StWert(InI, 3, 3)).Range(StWert(InI, 2, 2)).Interior.ColorIndex = CInt(StWert(InI, 1, 1))
End If
Next InI
End If
End If
End Sub

Nun erscheint beim Öffnen von Excel der Laufzeitfehler 91 und es wird die Zeile

StWert(InI, 3, 3) = ActiveSheet.Name

in der VBA-Umgebung markiert. Woran könnte das liegen? Geht das vielleicht nicht, was ich vorhabe?

Ich hoffe auf Antworten und bedanke mich schon mal im Voraus,
Oliver

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem mit eigenem Add-In!
30.08.2003 08:14:25
Hajo_Zi
Hallo Oliver

ich arbeite selber nicht mit ADD In. Ich häte den Code in die Datei Personl.Xls im Ordner Xlstart abgelegt. Diese Datei wird beim Statrt von Excel im ausgeblöendeten Zustand geladen.

Deinen Code habe ich mir jetzt nicht genauer angesehen, aber ich vermute mal das er in einer XLS Datei läuft.
Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.
Anzeige
Danke, geht aber leider Nicht!
30.08.2003 09:07:31
Oliver S.
Danke Dir Hajo für die Antwort,

aber leider funktioniert das nicht mit der Personl.xls. Das hatte ich gestern schon hier gefragt (siehe https://www.herber.de/forum/messages/301817.html). Leider ohne Erfolg, daher dachte ich an ein Add-In.

MfG,
Oliver
AW: Problem mit eigenem Add-In!
30.08.2003 14:48:09
Gerd
falsch: StWert(InI, 3, 3) = ActiveSheet.Name
richtig: StWert(InI + 3, 3) = ActiveSheet.Name

Den Code hab ich nicht geprüft.

Gerd
Leider auch nicht das richtige!
30.08.2003 15:49:16
Oliver S.
Danke Dir Gerd für die Antwort. Aber Dein Vorschlag hat leider auch nicht zu einer Lösung meines Problems geführt. Was ich noch vergessen habe zu erwähnen, der Code funktioniert in einer normalen Excelmappe ohne Probleme. Nur wenn ich ihn in Personl.xls oder in ein Add-In eintrage gibt es diesen Laufzeitfehler.
Daher meine Frage, ob das überhaupt funktioniert, das dieser Code in einem Add-In oder auch in der Personl.xls funktionieren kann, da der Code ja in Dieser Arbeitsmappe eingetragen wird und somit in meinen Augen eigentlich nur in der Datei Personl.xls funktionieren kann, nicht aber in einer anderen Datei. Sehe ich das richtig?

MfG,
Oliver
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige