01.05.2014, 14:41
Hallo
Ich bin froh, dass man "hier" wieder auf Antworten hoffen kann. Im guten Alten kam kurz vor Schluss nichts mehr. Ich arbeite immer noch an meinem größer werdenden Projekt. Mit eurer Hilfe und eigenem Experimentieren bin ich recht weit gekommen, doch nun stehen wieder ein paar Fragen an. - Excel 2003. -
Ich habe folgenden Code, z. T. mit Makro-Rec aufgezeichnet. Das hat nur den Nachteil, dass es sich auf diese nicht eindeutig beschriebene Zelle bezieht. Alle anderen Versuche dies zu ändern, haben im Einzelnen nicht funktioniert. Mir fehlt einfach der Überblick über die genauen Befehle und "Zusätze".
Die Variablen "Woche_A_.." sind definierte Namen, die auf ein bestimmtes Arbeitsblatt verweisen. In diesem dann auf A:A oder A:K...
Ich würde nun gern mal wissen, wie man das umstellen muss, damit der rechnet und nicht einfach die Formel in die Zelle einträgt?
Ziel ist: Er soll im Blatt "Druck Reisekosten" S2;Zeile 6 bis 36 (Spalte A enthält das Datum) einzeln füllen, mit dem was im jeweiligen Blatt (über Woche... gefunden) in Spalte B untereinander zum jeweiligen Datum steht. Das Datum steht dort immer nur in der ersten Zeile des Tages. Deshalb Variable A und B zum Festlegen der ersten und letzten Zeile.
Was ich dann noch als Text im Code stehen habe ist Zusatz, der irgendwann noch mit rein muss. Soweit bin ich nu aber noch nicht gekommen.
Danke schon mal.
Hardilein
(Wo kann ich hier die Sig. festlegen?)
Ich bin froh, dass man "hier" wieder auf Antworten hoffen kann. Im guten Alten kam kurz vor Schluss nichts mehr. Ich arbeite immer noch an meinem größer werdenden Projekt. Mit eurer Hilfe und eigenem Experimentieren bin ich recht weit gekommen, doch nun stehen wieder ein paar Fragen an. - Excel 2003. -
Ich habe folgenden Code, z. T. mit Makro-Rec aufgezeichnet. Das hat nur den Nachteil, dass es sich auf diese nicht eindeutig beschriebene Zelle bezieht. Alle anderen Versuche dies zu ändern, haben im Einzelnen nicht funktioniert. Mir fehlt einfach der Überblick über die genauen Befehle und "Zusätze".
Code:
Sub AbrechnungOrte()
Range("C6:C36").ClearContents
For i = 6 To 36
Range("C" & i).Select
A = ActiveCell.FormulaR1C1 = _
"=IF(ISERROR(MATCH(DAY(RC[-2]),Woche_A_A,0)),0,MATCH(DAY(RC[-2]),Woche_A_A,0))"
'Erste Zeile
'kommt "Falsch"!? Hätte evtl. "0" kommen sollen oder halt Zeilennummer, ODER?
If A > 0 Then
B = ActiveCell.FormulaR1C1 = _
"=IF(ISERROR(MATCH(DAY(RC[-2])+1,Woche_A_A,0)),COUNTA(Woche_F_F)+3,MATCH(DAY(RC[-2])+1,Woche_A_A,0)-1)"
'Letzte Zeile
'B = Application.If(IsError(Match(Day(Cells(i, 1)).Value + 1, Woche_A_A, 0)), CountA(Woche_F_F) + 3, Match(Day(Cells(i, 1)) + 1, Woche_A_A, 0) - 1)
'Test, um Select+ActiceCell weg zubekommen, geht aber nicht.
For k = A To B
'Noch nicht erforscht: Es sollen nur Einträge bei Index(Woche_A_K, k, 2) genommen werden, _
wenn Index(Woche_A_K, k, 9) nicht die Begriffe WkSt. oder Büro enthält. Diese können an beliebiger Stelle der Zelle stehen.
Range("C" & i) = Range("C" & i).Text + ActiveCell.FormulaR1C1 = Index(Woche_A_K, k, 2) + ";"
'"Range("C" & i) =" ändern in Variable und diese am Ende in diese Range eintragen lassen
Next
End If
Next
End Sub
Die Variablen "Woche_A_.." sind definierte Namen, die auf ein bestimmtes Arbeitsblatt verweisen. In diesem dann auf A:A oder A:K...
Ich würde nun gern mal wissen, wie man das umstellen muss, damit der rechnet und nicht einfach die Formel in die Zelle einträgt?
Ziel ist: Er soll im Blatt "Druck Reisekosten" S2;Zeile 6 bis 36 (Spalte A enthält das Datum) einzeln füllen, mit dem was im jeweiligen Blatt (über Woche... gefunden) in Spalte B untereinander zum jeweiligen Datum steht. Das Datum steht dort immer nur in der ersten Zeile des Tages. Deshalb Variable A und B zum Festlegen der ersten und letzten Zeile.
Was ich dann noch als Text im Code stehen habe ist Zusatz, der irgendwann noch mit rein muss. Soweit bin ich nu aber noch nicht gekommen.
Danke schon mal.
Hardilein
(Wo kann ich hier die Sig. festlegen?)