Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1340to1344
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

Zeile über VBA Button kopieren

Zeile über VBA Button kopieren
04.12.2013 17:21:13
Sören
Hallo Forengemeinde,
ich stehe mal wieder auf dem Schlauch bzgl. einer VBA Programmierung.
Folgende Ausgangssituation:
In Spalte B die Projektnumer und
in Spalte E der Auftragnehmer
und weitere Angaben, die jedoch nicht relevant sind.
Die Tabelle ist so aufgebaut, dass die Projektnummern gestaffelt sind, also sortiert sind, jedoch untereinander fortlaufend stehen.
Jetzt soll per VBA Button eine Zeile unterhalb der Zeile eingefügt werden, wo eine bestimmte TP-Nummer in Spalte B steht. Hier stelle ich mir einen Button pro TP vor, also wird keine Eingabemaske benötigt.
Zudem sollen die Werte von Spalte B und E, sowie alle Formatierung, Formeln und Dropdownfehler mitkopiert werden.
Ich habe bisher zwei unterschiedliche VBA Codes, die ich gefunden habe, aber ich kriege die beiden nicht zusammen.
Im ersten Code sucht er richtig nach der Projektnummer, kann aber die Formate und Werte nicht kopieren, aber jedoch die Dropdownfelder.
Im zweiten Code kopiert er richtig die Formate, Formeln und Werte, jedoch nicht die Dropdownfelder und immer nur an der allgemein letzten Zelle.
Code 1:
Private Sub Test2_Click()
Dim i As Long
i = Cells(Rows.Count, 2).End(xlUp).Row
Do Until Cells(i, 2) = "1"
i = i - 1
Loop
Rows(i + 1).Insert (xlPasteFormats)
End Sub

Code 2:
Sub Test_Click()
Dim Zeile As Long
With ActiveSheet
'Zeilennummer:
Zeile = .Cells.Find("*", , , , xlByRows, xlPrevious).Row + 1
'Kopieren:
Intersect(.Rows(Zeile - 1), .UsedRange).Copy
.Cells(Zeile, 1).PasteSpecial Paste:=xlPasteFormats            'Formate
.Cells(Zeile, 1).PasteSpecial Paste:=xlPasteFormulas           'Formeln
Application.CutCopyMode = False
'Werte löschen
Intersect(.Rows(Zeile), .UsedRange).SpecialCells(xlCellTypeConstants).ClearContents
'Nummer in Spalte A:
.Cells(Zeile, 4).Value = .Cells(Zeile - 1, 4).Value
'Datum in Spalte B:
.Cells(Zeile, 5).Value = .Cells(Zeile - 1, 5).Value
End With
End Sub

Hoffentlich könnt ihr mir wie beim letzten Mal helfen!
Vielen Dank schon mal.
Gruß,
Sören

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile über VBA Button kopieren
04.12.2013 17:51:43
Sören
Edit:
die darunterliegende Zeile soll dann natürlich auch um eine Zeile verschoben werden. Im zweiten code ist dies ja nicht der Fall.

AW: Zeile über VBA Button kopieren
05.12.2013 09:42:12
Sören
Hallo zusammen,
habe mich heute morgen nochmal rangesetzt und eine Lösung gefunden. Könnte zwar etwas schöner ausschauen vom Code her, aber es funktioniert anscheinend.
Private Sub Test2_Click()
Dim i As Long
i = Cells(Rows.Count, 2).End(xlUp).Row
Do Until Cells(i, 2) = "2"
i = i - 1
Loop
Rows(i + 1).Insert
Rows(i).Copy
Rows(i + 1).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Rows(i + 1).PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Rows(i + 1).SpecialCells(xlCellTypeConstants).ClearContents
Cells(i + 1, 4).Value = Cells(i, 4).Value
Cells(i + 1, 5).Value = Cells(i, 5).Value
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige