Servus,
Vielen Dank für die schnellen Antworten hier, das ist echter Luxus.
Leider konnte ich meine Problematik anscheind nicht richtig vermitteln.
Die einzelnen Zeilen( in english Row deswegen dachte ich Reihe .. ^^) sollen nicht gelöscht werden( Diese Funktion gibts es auch aber die klappt reibungslos) sondern ich will die Option haben diese nicht mit in die Rechnung einzubeziehen. Ich habe eine wie Ich finde sehr umständliche Lösung für diese Problematik für eine staatische Tabelle. Dieser Code überrüft ob die Zeile 53 in der Rechnung enthalten ist und geht dann alle 52 Spalten durch und ändert die Formel. Hier einmal der Code.
Sub Makro1()
'
' Makro1 Makro
'
'
Dim KW
Dim geplant
Dim alteFormel As String, neueFormel As String
Dim i As Integer
i = 0
KW = Array("C64", "D64", "E64", "F64", "G64", "H64", "I64", "J64", "K64", "L64", "M64", "N64", "O64", "P64", "Q64", "R64", "S64", "T64", "U64", "V64", "W64", "X64", "Y64", "Z64", "AA64", "AB64", "AC64", "AD64", "AE64", "AF64", "AG64", "AH64", "AI64", "AJ64", "AK64", "AL64", "AM64", "AN64", "AO64", "AP64", "AQ64", "AR64", "AS64", "AT64", "AU64", "AV64", "AW64", "AX64", "AY64", "AZ64", "BA64", "BB64")
geplant = Array("+C53", "+D53", "+E53", "+F53", "+G53", "+H53", "+I53", "+J53", "+K53", "+L53", "+M53", "+N53", "+O53", "+P53", "+Q53", "+R53", "+S53", "+T53", "+U53", "+V53", "+W53", "+X53", "+Y53", "+Z53", "+AA53", "+AB53", "+AC53", "+AD53", "+AE53", "+AF53", "+AG53", "+AH53", "+AI53", "+AJ53", "+AK53", "+AL53", "+AM53", "+AN53", "+AO53", "+AP53", "+AQ53", "+AR53", "+AS53", "+AT53", "+AU53", "+AV53", "+AW53", "+AX53", "+AY53", "+AZ53", "+BA53", "+BB53")
If Range(KW(i)).HasFormula = True And InStr(1, Range(KW(i)).Formula, geplant(i)) <> 0 Then
While i < 52
alteFormel = Range(KW(i)).Formula
neueFormel = Replace(alteFormel, geplant(i), "")
Range(KW(i)).Formula = neueFormel
i = i + 1
Wend
Else
While i < 52
alteFormel = Range(KW(i)).Formula
neueFormel = alteFormel + geplant(i)
Range(KW(i)).Formula = neueFormel
i = i + 1
Wend
End If
End Sub
Ich bin gerade dabei diesen Code so zu verändern das er auch für eine Dynamische Tabelle tauglich ist, leider muss ich dafür ziemlich viele Arrays erstellen, an einer Lösung diesen Schritt zu umgehen und das Array automatisch erstellen zu lassen, je nach dem welchen Bereich man angeklickt hat, arbeite ich auch noch.
Jedoch gibt es für meine Problematik ja vielleicht auch noch eine andere Lösung
Mit freundlichen Grüßen
Mo
|