Live-Forum - Die aktuellen Beiträge
Datum
Titel
19.04.2024 12:23:24
19.04.2024 11:45:34
Anzeige
Archiv - Navigation
1200to1204
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

Codeschlaufe um Formel erweitern

Codeschlaufe um Formel erweitern
Pascal
Guten Tag zusammen !
Mal wieder brauche ich Eure Hilfe / Ratschlag
Und zwar hab ich in einer Excel-Arbeitsmappe hinter einem Command-Button folgenden Code
Private Sub CommandButton1_Click()
Dim x As Long, y As Long, j As Long
Dim MyDatStrg As String
ActiveSheet.Unprotect "0000"
MyDatStrg = InputBox("Bitte Datum angeben", "Datum", Date)
If StrPtr(MyDatStrg) = 0 Then Exit Sub 'Abbrechen gedrückt
If Not IsDate(MyDatStrg) Then Exit Sub 'Kein Datum
x = Cells(Rows.Count, 10).End(xlUp).Row
y = Cells(Rows.Count, 1).End(xlUp).Row
For j = x + 1 To y
If x  y Then Range(Cells(x, 11), Cells(x, 13)).AutoFill Destination:=Range(Cells(y, 11), _
Cells(x, 13))
Next
'Schlaufe wird nun ein zweites Mal pro Datensatz durchlaufen um Zellen farbig zu formatieren
For j = x + 1 To y
With Cells(j, 10)
.Value = CDate(MyDatStrg)
.Interior.ColorIndex = 20
End With
With Cells(j, 11)
.Interior.ColorIndex = 6
End With
With Cells(j, 12)
.Interior.ColorIndex = 6
End With
With Cells(j, 13)
.Interior.ColorIndex = 6
End With
Next
ActiveSheet.Columns("A:I").Locked = False
ActiveSheet.Columns("J:O").Locked = True
ActiveSheet.Columns("P:Z").Locked = False
ActiveSheet.Protect "0000"
End Sub

Sinn und Zweck dieses Codes:
Ich kopiere ab einer anderen Liste manuell Zeilen in diese Excel-Tabelle rein und lasse nun obiges Makro laufen.
Dieses Makro versieht alle Zeilen mit einem Datum, welches ich in die Inputbox eingebe, Formatiert die Zeilen und setzt anschliessend wieder einen Schreibschutz über
Bestimmte Zeilen.
Das alles funktioniert einwandfrei.
Nun aber meine Frage:
Ich möchte den obigen Code so erweitern, dass mir dieser pro Dateinzeile jeweils noch zusätzlich folgende Formeln in die Spalte K, resp. S schreibt:
In die Spalte K soll pro Datensatz die Formel "=J entsprechende Zeilennummer fortlaufend aufsteigend – F entsprechende Zeilennummer fortlaufend aufsteigend
In die Spalte S soll jeweils folgende Formel "=WENN(A entsprechende Zeilennummer fortlaufend aufsteigend >=1;1;"")
Wie und wo müsste ich meine Code-Schlaufen entsprechend anpassen ?
Herzlichen Dank für Eure Tips und Hilfe !

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

Betreff
Benutzer
Anzeige
AW: Codeschlaufe um Formel erweitern
16.02.2011 16:38:43
Rudi
Hallo,
 For j = x + 1 To y
With Cells(j, 10)
.Value = CDate(MyDatStrg)
.Interior.ColorIndex = 20
End With
With Cells(j, 11).Resize(, 3)
.Interior.ColorIndex = 6
End With
Cells(j, 11).FormulaR1C1 = "=RC10-RC6"
Cells(j, 19).FormulaR1C1 = "=IF(RC1>=1,1,"""")"
Next

Gruß
Rudi
AW: Codeschlaufe um Formel erweitern
17.02.2011 05:53:35
Pascal
Hallo Rudi
Besten Dank schon mal für diesen Code.
ich werde mir diesen gleich mal zu Gemüte führen und ausgiebig testen.
Feedback folgt selbstverständlich.
Grüsse und schönen Tag
Pascal
AW: Codeschlaufe um Formel erweitern
17.02.2011 07:15:55
Pascal
Es ist genau was ich suchte !
HERZLICHEN DANK !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige