fehlerhaftes Excel-Makro
#1
Photo 
Hallo,

ich habe eine Excel-Datei erstellt, in der Werte, die in einer Eingabemaske eingegeben werden, per Makro in eine Tabelle übernommen werden. Da ich mich selbst nicht wirklich mit Code auskenne (habe lediglich 1-2 Anfängerseminare in der Uni gehabt), habe ich das Makro aufnehmen lassen. Ich habe dabei erst eine Zeile eingefügt und dann die Werte einzeln in die Tabelle kopiert, bevor ich die Aufzeichnung beendet habe. Nun müsste das Programm ja autmatisch bei jeder Ausführung eine neue Zeile mit den neu eingetragenen Werten erstellen und sich die Tabelle so selbstständig vervollständigen. Leider ist dies nicht ganz der Fall. Die neue Zeile mitsamt der neuen Werte wird zwar generiert, allerdings verschwinden gleichzeigtig auch die Werte aus der vorherigen Zeile? Woran liegt das? Kann mir jemand weiterhelfen?

Hier noch der Code (Ich bearbeite anfangs meines Makros noch die Formattierung der neuen, eingefügten Zellen):

PHP-Code:
Sub Speichern()
'
'
Speichern Makro
'

'
    Rows("17:17").Select
    Selection
.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Rows
("17:17").Select
    Selection
.RowHeight = 30
    With Selection
.Interior
       
.Pattern = xlNone
       
.TintAndShade = 0
       
.PatternTintAndShade = 0
    End With
    Range
("B17:I17").Select
    Range
("I17").Activate
    Selection
.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection
.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection
.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlThin
    End With
    With Selection
.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlThin
    End With
    With Selection
.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlThin
    End With
    With Selection
.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlThin
    End With
    With Selection
.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlThin
    End With
    With Selection
.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlThin
    End With
    Range
("H17:I17").Select
    With Selection
.Interior
       
.Pattern = xlSolid
       
.PatternColorIndex = xlAutomatic
       
.ThemeColor = xlThemeColorDark1
       
.TintAndShade = -0.149998474074526
       
.PatternTintAndShade = 0
    End With
    Range
("B15:I16").Select
    Selection
.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection
.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection
.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlMedium
    End With
    With Selection
.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlMedium
    End With
    With Selection
.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlMedium
    End With
    With Selection
.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlMedium
    End With
    With Selection
.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlThin
    End With
    With Selection
.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
       
.ColorIndex = 0
       
.TintAndShade = 0
       
.Weight = xlThin
    End With
    Range
("D6:D7").Select
    Selection
.Copy
    Range
("B17").Select
    Selection
.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
       
:=False, Transpose:=False
    Range
("E6:E7").Select
    Application
.CutCopyMode = False
    Selection
.Copy
    Range
("C17").Select
    Selection
.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
       
:=False, Transpose:=False
    Range
("D10:D11").Select
    Application
.CutCopyMode = False
    Selection
.Copy
    Range
("D17").Select
    Selection
.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
       
:=False, Transpose:=False
    Range
("E10:E11").Select
    Application
.CutCopyMode = False
    Selection
.Copy
    Range
("E17").Select
    Selection
.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
       
:=False, Transpose:=False
    Range
("G6:G7").Select
    Application
.CutCopyMode = False
    Selection
.Copy
    Range
("F17").Select
    Selection
.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
       
:=False, Transpose:=False
    Range
("G10:G11").Select
    Application
.CutCopyMode = False
    Selection
.Copy
    Range
("G17").Select
    Selection
.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
       
:=False, Transpose:=False
    Range
("D6:D7").Select
    Application
.CutCopyMode = False
    Selection
.ClearContents
    Range
("G6:G7").Select
    Selection
.ClearContents
    Range
("D10:D11").Select
    Selection
.ClearContents
    Range
("G10:G11").Select
    Selection
.ClearContents
    Range
("B17:G17").Select
    With Selection
.Font
       
.ColorIndex = xlAutomatic
       
.TintAndShade = 0
    End With
    Selection
.Font.Size = 12
    With Selection
       
.VerticalAlignment = xlCenter
       
.WrapText = False
       
.Orientation = 0
       
.AddIndent = False
       
.IndentLevel = 0
       
.ShrinkToFit = False
       
.ReadingOrder = xlContext
       
.MergeCells = False
    End With
    With Selection
       
.HorizontalAlignment = xlCenter
       
.VerticalAlignment = xlCenter
       
.WrapText = False
       
.Orientation = 0
       
.AddIndent = False
       
.IndentLevel = 0
       
.ShrinkToFit = False
       
.ReadingOrder = xlContext
       
.MergeCells = False
    End With
End Sub
Top
#2
Hallo,

(21.12.2020, 13:21)Dorzen14 schrieb: ... Die neue Zeile mitsamt der neuen Werte wird zwar generiert, allerdings verschwinden gleichzeigtig auch die Werte aus der vorherigen Zeile? Woran liegt das?

da im Code immer 2 Zeilen kopiert werden, müssten vorher wohl 2 neue Zeilen eingefügt werden. Wink

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Dorzen14
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste