Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1728to1732
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

Formel wiederherstellen ?

Formel wiederherstellen ?
18.12.2019 07:44:25
Alex
Guten Morgen,
Ich benutze in einen CommandButton um in einer Spalte zu dem Markierten Bereich Einträge zu machen,
Beispiel "U" für Urlaub, jetzt ist es aber so dass dann die Formel die sich in der jeweiligen Zelle überschrieben wird mit dem "U". Das selbe hätte ich jetzt gern so gehabt das es auch einen CommandButton gibt mit dem ich die Formel in dem Markierten Bereich wiederherstellen kann, mit samt den Zellbezügen. Ist das möglich ?
Die Formel wäre:
=WENN(N10=1;"X";WENN(N10=0;"";WENN(N10=2;"X";)*WENN(N10=3;"X";WENN(N10=4;"X";WENN(N10=5;"X"; WENN(N10=6;"X";WENN(N10=7;"X";WENN(N10=8;"X";WENN(N10=9;"X";WENN(N10=10;"X";WENN(N10=11;"X"; WENN(N10=12;"X";WENN(N10=13;"X";WENN(N10=14;"X";WENN(N10=15;"X";WENN(N10=16;"X";WENN(N10=17;"X"; WENN(N10=18;"X";WENN(N10=19;"X";WENN(N10=20;"X";WENN(N10=21;"X";WENN(N10=22;"X";WENN(N10=23;"X"; WENN(N10=24;"X";WENN(N10=25;"X";WENN(N10=26;"X";WENN(N10=27;"X";WENN(N10=28;"X";WENN(N10=29;"X"; WENN(N10=30;"X";WENN(N10=31;"X";WENN(N10=32;"X";WENN(N10=33;"X";WENN(N10=34;"X";WENN(N10=35;"X"; WENN(N10=36;"X";WENN(N10=37;"X";WENN(N10=38;"X";WENN(N10=39;"X";WENN(N10=40;"X";WENN(N10=41;"X"; WENN(N10=42;"X";WENN(N10=43;"X";WENN(N10=44;"X";WENN(N10=45;"X";WENN(N10=46;"X";WENN(N10=47;"X"; WENN(N10=48;"X";WENN(N10=49;"X";WENN(N10=50;"X";WENN(N10=51;"X";WENN(N10=52;"X";WENN(N10=53;"X"; WENN(N10=54;"X";WENN(N10=55;"X";WENN(N10=56;"X";WENN(N10=57;"X";WENN(N10=58;"X";WENN(N10=59;"X"; WENN(N10=60;"X";))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
Aktuell benutze ich diesen Code um die Einträge in den markierten Bereich zu erstellen:
Private Sub UrlaubGenehmigt_Click()
Antwort = MsgBox("Urlaub im markierten Bereich genehmigen", 292, "Urlaub genehmigen")
If Antwort = vbYes Then
With Selection.Interior
.Pattern = xlSolid
.Color = RGB(0, 255, 0)
.TintAndShade = 0
End With
With Selection.Font
.ColorIndex = xlAutomatic
.TintAndShade = 0
End With
Selection.Value = "U"
End If
End Sub
Danke für die Hilfe, Gruss

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel wiederherstellen ?
18.12.2019 07:56:30
hary
Moin
Nur am Rande. Wat 'ne riesen Formel.
Versuch mal diese:
=WENN(UND(N10>0;N10<=60);"x";"")
gruss hary
AW: Formel wiederherstellen ?
18.12.2019 08:05:51
Alex
Danke Hary :)
AW: Formel wiederherstellen ?
18.12.2019 08:09:17
hary
Moin nochemal
Und fuer das eintragen der Formel, wenn die gekuerzte passt. Nimm FormulaR1C1.
Selection.FormulaR1C1 = "=IF(AND(RC[1]>0,RC[1]

gruss hary
AW: Formel wiederherstellen ?
18.12.2019 08:13:51
Alex
Vielen Dank für die Hilfe
AW:kleine Korrektur
18.12.2019 08:22:10
hary
Moin
Die Formel mit absolutem Bezug ist evtl. besser.
Selection.FormulaR1C1 = "=IF(AND(RC14>0,RC14

gruss hary
AW: Formel wiederherstellen ?
18.12.2019 08:04:04
Jürgen
Hallo Alex,
wo sollte hier das Problem sein?
Einfach den Makrorecorder verwenden. :-)
Private Sub UrlaubGenehmigt_Click()
Antwort = MsgBox("Urlaub im markierten Bereich genehmigen", 292, "Urlaub genehmigen")
Dim xCell As Variant
If Antwort = vbYes Then
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
With Selection.Font
.ColorIndex = xlAutomatic
.TintAndShade = 0
End With
Selection.FormulaR1C1 = "=IF(RC[-2]=1,""X"",IF(RC[-2]=0,"""",IF(RC[-2]=2,""X"",)*IF(RC[- _
2]=3,""X"",IF(RC[-2]=4,""X"",IF(RC[-2]=5,""X"", IF(RC[-2]=6,""X"",IF(RC[-2]=7,""X"",IF(RC[-2]=8,""X"",IF(RC[-2]=9,""X"",IF(RC[-2]=10,""X"",IF(RC[-2]=11,""X"", IF(RC[-2]=12,""X"",IF(RC[-2]=13,""X"",IF(RC[-2]=14,""X"",IF(RC[-2]=15,""X"",IF(RC[-2]=16,""X"",IF(RC[-2]=17,""X"", IF(RC[-2]=18,""X"",IF(" & _
"RC[-2]=19,""X"",IF(RC[-2]=20,""X"",IF(RC[-2]=21,""X"",IF(RC[-2]=22,""X"",IF(RC[-2]=23," _
"X"", IF(RC[-2]=24,""X"",IF(RC[-2]=25,""X"",IF(RC[-2]=26,""X"",IF(RC[-2]=27,""X"",IF(RC[-2]=28,""X"",IF(RC[-2]=29,""X"", IF(RC[-2]=30,""X"",IF(RC[-2]=31,""X"",IF(RC[-2]=32,""X"",IF(RC[-2]=33,""X"",IF(RC[-2]=34,""X"",IF(RC[-2]=35," & _
"""X"", IF(RC[-2]=36,""X"",IF(RC[-2]=37,""X"",IF(RC[-2]=38,""X"",IF(RC[-2]=39,""X"",IF( _
RC[-2]=40,""X"",IF(RC[-2]=41,""X"", IF(RC[-2]=42,""X"",IF(RC[-2]=43,""X"",IF(RC[-2]=44,""X"",IF(RC[-2]=45,""X"",IF(RC[-2]=46,""X"",IF(RC[-2]=47,""X"", IF(RC[-2]=48,""X"",IF(RC[-2]=49,""X"",IF(RC[-2]=50,""X"",IF(RC[-2]=51,""X"",IF(R" & _
"C[-2]=52,""X"",IF(RC[-2]=53,""X"", IF(RC[-2]=54,""X"",IF(RC[-2]=55,""X"",IF(RC[-2]=56," _
"X"",IF(RC[-2]=57,""X"",IF(RC[-2]=58,""X"",IF(RC[-2]=59,""X"", IF(RC[-2]=60,""X"",))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))" & _
End If
End Sub
Gruß
Jürgen
Anzeige
AW: Formel wiederherstellen ?
18.12.2019 08:46:35
Daniel
Hi
Kopieren dir aus der normalen Tabelle die funktionierende Formel in eine freie Zelle (z.b. im Überschriftenbereich)
Im Code des Button musst du dann nur noch die Formel dieser Zelle in den selektierten Bereich über tragen:
Selection.FormulaR1C1 = Range("...").FormulaR1C1

Oder wenn du Vorlagenzelle passend formatierst, kannst du Formel und Formatierung gleichzeitig zurück setzen:
Range("...").Copy destination:=Selection
Das hätte folgende Vorteile:
Du kannst die Formel jederzeit ändern, ohne in den Code eingreifen zu müssen, dh. das kann im Bedarfsfall such der VBA unkundige Anwender selber machen.
Die ganze Aktion lässt sich so auch ohne Makro ausführen.
Gruß Daniel
Anzeige
AW: Formel wiederherstellen ?
18.12.2019 09:30:06
Alex
Danke für die Hilfe

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige