Hi all,
Ik ben bezig met een Excel bestand voor mijn werk. Ik ben zelf niet echt heel bekend met Excel, dus ben al redelijk trots hoe ver ik ben gekomen, maar nu loop ik toch een beetje vast. Door mijn weinige kennis van Excel weet ik niet of mijn uitleg duidelijk is. Maar ik ga het proberen:
Het gaat om een bestand met twee tabbladen. In tabblad 2 voer ik de gegevens van een product in. Dit staat horizontaal (in een rij). Zodra alle gegevens hiervan zijn ingevuld, kopieer en plak ik deze volledige rij door middel van een Macro naar tabblad 1.
Nu staat mijn macro zo ingesteld dat de gekopieerde rij wordt geplakt op rij 2 van tabblad 1. Dus telkens schuiven de reeds geplakte artikelen een plekje op naar beneden. Niks wordt dus overschreven. Maar het liefst heb ik dat de meest recent geplakte rij onderaan het bestand wordt geplakt. Dus bij de eerstvolgende lege rij in tabel 1.
Op dit moment staat het als volgt:
- Als derde toegevoegd
- Als tweede toegevoegd
- Als eerste toegevoegd
En ik zie het graag als volgt:
- Als eerste toegevoegd
- Als tweede toegevoegd
- Als derde toegevoegd
Mijn macro hoe hij nu is:
Rows("19:19").Copy
Sheets("Import").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
Selection.Borders(xlEdgeBottom).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
Range("A2").Select
Sheets("Invoer").Select
Range("A19").Select
Sheets("Import").Select
End Sub
Kan iemand mij hier verder mee helpen (en als het mogelijk is in jip-en-janneketaal voor een leek als ik?
Ik ben bezig met een Excel bestand voor mijn werk. Ik ben zelf niet echt heel bekend met Excel, dus ben al redelijk trots hoe ver ik ben gekomen, maar nu loop ik toch een beetje vast. Door mijn weinige kennis van Excel weet ik niet of mijn uitleg duidelijk is. Maar ik ga het proberen:
Het gaat om een bestand met twee tabbladen. In tabblad 2 voer ik de gegevens van een product in. Dit staat horizontaal (in een rij). Zodra alle gegevens hiervan zijn ingevuld, kopieer en plak ik deze volledige rij door middel van een Macro naar tabblad 1.
Nu staat mijn macro zo ingesteld dat de gekopieerde rij wordt geplakt op rij 2 van tabblad 1. Dus telkens schuiven de reeds geplakte artikelen een plekje op naar beneden. Niks wordt dus overschreven. Maar het liefst heb ik dat de meest recent geplakte rij onderaan het bestand wordt geplakt. Dus bij de eerstvolgende lege rij in tabel 1.
Op dit moment staat het als volgt:
- Als derde toegevoegd
- Als tweede toegevoegd
- Als eerste toegevoegd
En ik zie het graag als volgt:
- Als eerste toegevoegd
- Als tweede toegevoegd
- Als derde toegevoegd
Mijn macro hoe hij nu is:
Rows("19:19").Copy
Sheets("Import").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
Selection.Borders(xlEdgeBottom).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
Range("A2").Select
Sheets("Invoer").Select
Range("A19").Select
Sheets("Import").Select
End Sub
Kan iemand mij hier verder mee helpen (en als het mogelijk is in jip-en-janneketaal voor een leek als ik?