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

VBA Kopieren / Einfügen mit Format

VBA Kopieren / Einfügen mit Format
05.11.2013 18:29:28
Stefan
Hallo,
ich habe ein kleines Problem :D ich lasse aus einem tabellenblatt etwas kopieren und in ein anderes einfügen mit Format. Nun das erste problem. Wenn die Überschrift Fett und darunter alles normal steht übernimmt er alles in Fett beim Einfügen. Hier mein Code
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$A$2" Then
Cells(2, 2) = "Nichts Ausgewählt"
End
End If
If Target.Address = "$B$2" Then
If Cells(2, 2) = "Nichts Ausgewählt" Then
End
Else
For intRow = 1 To 100
If Target.Value = Worksheets("DP").Cells(intRow, 1).Value Then
'Sheets("Auswahl").Range(Sheets("Auswahl").Cells(Target.Row, 5), Sheets(" _
Auswahl").Cells(Target.Row, 13)).Value = Sheets("DP").Range(Sheets("DP").Cells(intRow, 2), Sheets("DP").Cells(intRow, 10)).Value
Sheets("DP").Range(Sheets("DP").Cells(intRow, 2), Sheets("DP").Cells(intRow, 10) _
).Copy
Sheets("Auswahl").Cells(Target.Row, 5).PasteSpecial Paste:=xlPasteFormats,  _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Sheets("Auswahl").Cells(Target.Row, 5).PasteSpecial Paste:=xlPasteValues
End If
Next intRow
End If
End If
End Sub

Nun mein zweites Problem. Da ich über ein Dropdown Menü verschiedene Punkte auswählen kann und über VBA das auch erkannt wird hab ich das Problem das ich bei zb mehreren Zeilen ein und den selben Namen habe. So hab ich die Tabellen vorne Verbunden und nun hab ich zb 3 Zeilen und nur noch "1" Punkt fürs Dropdown menü. Er erkennt das auch richtig und kopiert aber leider nur die erste Zeile und nicht die anderen beiden Zeilen die dazu gehören würden. Hoffe ich konnte das richtig erklären.
Vielen Dank für eure Hilfe

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Kopieren / Einfügen mit Format
05.11.2013 19:52:58
fcs
Hallo Stefan,
zum Problem "Fett in Überschriften" kann ich nichts sagen.
Problem verbundene Zellen in Spalte A des Blatts "DP".
Man kann prüfen, ob die Zelle, die mit dem gesuchten Wert zu einem verbundenen Zellbereich gehört.
Bei WAHR (True) werden dann alle die Zellen rechts der verbunden Zellen kopiert.
Nachfolgend dein Makro, wie es ggf. funktionieren könnte.
Gruß
Franz
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim intRow
If Target.Address = "$A$2" Then
Cells(2, 2) = "Nichts Ausgewählt"
ElseIf Target.Address = "$B$2" Then
If Cells(2, 2)  "Nichts Ausgewählt" Then
For intRow = 1 To 100
If Target.Value = Worksheets("DP").Cells(intRow, 1).Value Then
With Sheets("DP")
If .Cells(intRow, 1).MergeCells = True Then 'Zellen in Spalte A sind  _
verbunden
.Range(.Cells(intRow, 2), .Cells(intRow + _
.Cells(intRow, 1).MergeArea.Rows.Count - 1, 10)).Copy
Else
.Range(.Cells(intRow, 2), .Cells(intRow, 10)).Copy
End If
End With
With Sheets("Auswahl")
.Cells(Target.Row, 5).PasteSpecial Paste:=xlPasteFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
.Cells(Target.Row, 5).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End With
End If
Next intRow
End If
End If
End Sub

Anzeige
AW: VBA Kopieren / Einfügen mit Format
06.11.2013 07:40:13
Stefan
Hallo Franz,
Super genial ! Danke für die super schnelle Antwort. Das Funktioniert 1a !!!
Nun muss ich mir über das Überschrift Problem noch ne Lösung einfallen lassen :D
Stefan

AW: VBA Kopieren / Einfügen mit Format
06.11.2013 07:49:13
Stefan
Ich muss noch mal ne weitere Frage stellen zwecks einer anderen Schleife.
Vor dem einfügen der Daten sollen die Zellen vorher alle gelöscht werden. könnte ja sein das erst mehr Zellen kopiert wurden und bei einer erneuten auswahl weniger eingefügt werden. so stehen da noch daten die man eigentlich nicht mehr will.

AW: VBA Kopieren / Einfügen mit Format
06.11.2013 11:03:56
fcs
Hallo Stefan,
auf die Frage hab ich eigentlich gewartet - hatte aber die Hoffnung, dass du das alleine lösen kannst.
Mit den Ergänzungen werden im Blatt "Auswahl" ab Zeile 2 in den Spalten E:M vorhandene Zellinhalte und -formate gelöscht.
Die Zeilen mit "Application.EnableEvents" hab ich eingefügt, damit es nicht zu unnötigen Neustarts des Makros kommt, wenn Inhalte im Blatt "Auswahl" gelöscht bzw. eingefügt werden.
Gruß
Franz
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim intRow, lngSpalte
If Target.Address = "$A$2" Then
Cells(2, 2) = "Nichts Ausgewählt"
ElseIf Target.Address = "$B$2" Then
If Cells(2, 2)  "Nichts Ausgewählt" Then
With Sheets("Auswahl")
intRow = 2
'Zeilen hochzählen, bis zur 1. leeren Zeile in E:M
Do
'prüfen, ob Zellen in Spalten E bis M der Zeile leer sind
If Application.WorksheetFunction.CountA(.Range(.Cells(intRow, 5), _
.Cells(intRow, 14))) = 0 Then
If intRow > 2 Then
Application.EnableEvents = False
'Inhalte und Formate im Bereich E2:Mxxx löschen
.Range(.Cells(2, 5), .Cells(intRow - 1, 14)).Clear
Application.EnableEvents = True
End If
Exit Do
End If
intRow = intRow + 1
Loop
End With
For intRow = 1 To 100
If Target.Value = Worksheets("DP").Cells(intRow, 1).Value Then
With Sheets("DP")
If .Cells(intRow, 1).MergeCells = True Then 'Zellen in Spalte A _
sind verbunden
.Range(.Cells(intRow, 2), .Cells(intRow + _
.Cells(intRow, 1).MergeArea.Rows.Count - 1, 10)).Copy
Else
.Range(.Cells(intRow, 2), .Cells(intRow, 10)).Copy
End If
End With
With Sheets("Auswahl")
Application.EnableEvents = False
.Cells(Target.Row, 5).PasteSpecial Paste:=xlPasteFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
.Cells(Target.Row, 5).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Application.EnableEvents = True
End With
Exit For
End If
Next intRow
End If
End If
End Sub

Anzeige
AW: VBA Kopieren / Einfügen mit Format
06.11.2013 11:21:47
Stefan
Ich sage mal ganz vielen lieben dank !!!! es klappt richtig super

328 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige