Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1084to1088
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
Inhaltsverzeichnis

VBA-Formel hat Fehler

VBA-Formel hat Fehler
ReSt
Hallo
Ich erstelle eine alte Datei neu. Jedoch bekomme ich im Makro einen Fehler gegenwärtig. Der Fehler ist in der VBA Zeile ;iCol = ActiveSheet.Buttons(Application.Caller).TopLeftCell.Column (gelb markiert) Nun, ich habe keine Ahnung was ich ändern muss. Weiss jemand Rat? Ich benutze als BS Vista SP2.
Die Aufgabe des Makros ist, wenn ich einen Feierttag habe, soll es mit einem Klick (farbige Icons) über alle Mitarbeiter den Tag als frei markieren. Ich möchte auch mit diesem Makro weiterarbeiten, denn es ist von einem Profi aus diesem Forum. Danke
Die Datei sieht so aus. Unten steht das Makro.
JanDez

 ABCDEFGHIJKLMN
1   SylvesterNeujahrBerchtoldstag        
2  52DezemberKW  1 Januar
3 28293031010203040506070809
4Kader             
51             
62             
73             
84             
95             
106             
11Office      
127             
138             
14Konstruktion   172.00  
159             
1610             
1711             
1812             
1913             
20TLB   43.00  
2114             
2215             
23BC-Center   225.00  
2416             
2517             
2618             
2719             
2820             
2921             
3022             
3123             

Formeln der Tabelle
ZelleFormel
C2=WENN(WOCHENTAG(C3)=4;KÜRZEN((C3-WOCHENTAG(C3;2)-DATUM(JAHR(C3+4-WOCHENTAG(C3;2)); 1;-10))/7); "")
D2=WENN(C2<>"";WAHL(MONAT(C3); "Januar";"Februar";"März";"April";"Mai";"Juni";"Juli";"August";"September";"Oktober";"November";"Dezember"); "")
H2=WENN(WOCHENTAG(H3)=2;KÜRZEN((H3-WOCHENTAG(H3;2)-DATUM(JAHR(H3+2-WOCHENTAG(H3;2)); 1;-10))/7); "")
K2=WENN(H2<>"";WAHL(MONAT(J3); "Januar";"Februar";"März";"April";"Mai";"Juni";"Juli";"August";"September";"Oktober";"November";"Dezember"); "")
B3=C3-1
C3=D3-1
D3=E3-1
E3=F3-1
F3=G3-1
G3=H3-1
H3=Input!F2
I3=H3+1
J3=I3+1
K3=J3+1
L3=K3+1
M3=L3+1
N3=M3+1
A4=WENN(Input!A6="";"";Input!A6)
A5=WENN(Input!A7="";"";Input!A7)
A6=WENN(Input!A8="";"";Input!A8)
A7=WENN(Input!A9="";"";Input!A9)
A8=WENN(Input!A10="";"";Input!A10)
A9=WENN(Input!A11="";"";Input!A11)
A10=WENN(Input!A12="";"";Input!A12)
A11=WENN(Input!A13="";"";Input!A13)
A12=WENN(Input!A14="";"";Input!A14)
A13=WENN(Input!A15="";"";Input!A15)
A14=WENN(Input!A16="";"";Input!A16)
H14=SUMME(Input!$E$17:$E$21)-SUMME(ANZAHL2(H15:L15)*Input!$C$17;ANZAHL2(H16:L16)*Input!$C$18;ANZAHL2(H17:L17)*Input!$C$19;ANZAHL2(H18:L18)*Input!$C$20;ANZAHL2(H19:L19)*Input!$C$21)
A15=WENN(Input!A17="";"";Input!A17)
A16=WENN(Input!A18="";"";Input!A18)
A17=WENN(Input!A19="";"";Input!A19)
A18=WENN(Input!A20="";"";Input!A20)
A19=WENN(Input!A21="";"";Input!A21)
A20=WENN(Input!A22="";"";Input!A22)
H20=SUMME(Input!$E$23:$E$24)-SUMME(ANZAHL2(H21:L21)*Input!$C$23;ANZAHL2(H22:L22)*Input!$C$24)
A21=WENN(Input!A23="";"";Input!A23)
A22=WENN(Input!A24="";"";Input!A24)
A23=WENN(Input!A25="";"";Input!A25)
H23=SUMME(Input!$E$26:$E$36)-SUMME(ANZAHL2(H24:L24)*Input!$C$26;ANZAHL2(H25:L25)*Input!$C$27;ANZAHL2(H26:L26)*Input!$C$28;ANZAHL2(H27:L27)*Input!$C$29;ANZAHL2(H28:L28)*Input!$C$30;ANZAHL2(H29:L29)*Input!$C$31;ANZAHL2(H30:L30)*Input!$C$32;ANZAHL2(H31:L31)*Input!$C$33;ANZAHL2(H32:L32)*Input!$C$34;ANZAHL2(H33:L33)*Input!$C$35;ANZAHL2(H34:L34)*Input!$C$36)
A24=WENN(Input!A26="";"";Input!A26)
A25=WENN(Input!A27="";"";Input!A27)
A26=WENN(Input!A28="";"";Input!A28)
A27=WENN(Input!A29="";"";Input!A29)
A28=WENN(Input!A30="";"";Input!A30)
A29=WENN(Input!A31="";"";Input!A31)
A30=WENN(Input!A32="";"";Input!A32)
A31=WENN(Input!A33="";"";Input!A33)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4


' markiert die freien Arbeitstage über alle Ma's in Jan-Juli
Sub Markieren()
ActiveSheet.Unprotect Password:=""
   Dim iCol As Integer, iRow As Integer
   Dim rng As Range
   iCol = ActiveSheet.Buttons(Application.Caller).TopLeftCell.Column
   iRow = 1
   With Worksheets("FeiertagJanDez").Columns(iCol)
      Do Until IsEmpty(.Cells(iRow))
         With Range(.Cells(iRow).Value)
            If .Interior.ColorIndex = 15 Then
               .Interior.ColorIndex = xlColorIndexNone
               .ClearContents
               .Borders(xlDiagonalDown).LineStyle = xlNone ' löscht Springerschrägstriche
               .Borders(xlDiagonalUp).LineStyle = xlNone
            Else
               .Interior.ColorIndex = 15
               .Font.ColorIndex = 15
               .Value = Worksheets("Input").Range("H6").Value   ' hier steht die tägliche normale Arbeitszeit
            End If
         End With
         iRow = iRow + 1
      Loop
   End With
   ActiveSheet.Protect Password:=""
End Sub


Gruss Reto

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: VBA-Formel hat Fehler
28.06.2009 07:56:03
Luschi
Hallo Reto,
iCol = ActiveSheet.Buttons(Application.Caller).TopLeftCell.Column kann man nur benutzen, wenn man ein Button aus der Formular-Steuerelemente-Gruppe nimmt.
Mit dem Button aus der ActiveX-Steuerelemente-Gruppe klappt das nicht.
Gruß von Luschi
aus klein-Paris
PS: Und hier muß ich auch mal wieder Excel 2007 kritisieren. Die VBA-Hilfe ist unter aller Kanone. Zu vielen Problemen gibt es einfach keine Hilfe. So auch zu dem Buttons-Objekt. Es wird zwar glorreich mitgeteilt, daß es zum gesuchten Wort mehrere Einträge gibt, wählt man dann einen Eintrag aus, bleibt der Bildschirm leer. Da hat sich gegenüber ExcelXP und Excel2003 überhaupt keine Verbesserung eingestellt.
Anzeige
DANKE AW: VBA-Formel hat Fehler
28.06.2009 09:09:37
ReSt
Hallo Luschi
Besten Dank für deine Hilfe. Ja da hast du recht gehabt. Ich habe das Active X statt Formular Steuerelement benutzt. Nun habe ich mal wieder zusätzlich Arbeit. Beim nächsten Regentag werde ich die Buttons ersetzen. Das macht sicherlich viel Spass bei 250 Stück.
Danke und wünsche Dir einen schönen Sonntag.
Gruss Reto

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige