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

Frage zu einem Programmtext! Mit Code

Frage zu einem Programmtext! Mit Code
23.01.2014 07:26:53
Peter
Hallo Leute!
Folgender Programmcode, soll zwei Zeilen bei rechtsklick duplizieren.
Nun geht es mir dabei aber rein um das Format, welches von den vorherigen Zellen übernommen werden soll.
Bei diesem Programmcode, wird aber auch der Inhalt, z.B Bilder der vorherigen Zeile übernommen.
Wisst ihr, wir man das so einstellen kann, dass nur das Format und übernommen wird? Und am besten wäre es, wenn ich noch eine Zellfarbe eingeben könnte, die für die neuen Zeilen übernommen wird! Ich hoffe mir kann dabei noch mal jemand helfen. Vielen Dank schon mal.
Hier der Code:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 1 And Target.Row > 8 Then
If Target.Cells.Count  2 Then Exit Sub
If Target.Offset(1, 0).MergeArea.Address  Target.Offset(1, 0).Address Then Exit Sub
Target.Resize(2, 27).Copy Destination:=Target.Offset(1, 0)
Target.Offset(1, 0).Resize(2, 27).ClearContents
Target.Offset(1, 0) = Target.Cells(1, 1) + 1
Target.Offset(1, 0).RowHeight = Target.Cells(1, 1).RowHeight
Target.Offset(2, 0).RowHeight = Target.Cells(2, 1).RowHeight
Cancel = True
End If
End Sub

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Frage zu einem Programmtext! Mit Code
23.01.2014 09:23:33
JoWE
Hallo Peter,
ungetestet so vllt.:
Target.Resize(2, 27).Copy
Target.Offset(1, 0).PasteSpecial Paste:=xlPasteFormats
Gruß
Jochen

AW: Frage zu einem Programmtext! Mit Code
23.01.2014 11:57:04
Peter
Super, das funktioniert, vielen Dank.
Weißt du auch, wie ich jetzt einen bestimmten Bereich der neuen Zeilen in einer bestimmten Farbe einfärbe und einen bestimmten Text reinschreibe?
Das wäre klasse, wenn das noch jemand wüsste.
Vielen lieben Dank.

AW: Frage zu einem Programmtext! Mit Code
23.01.2014 12:22:36
Rudi
Hallo,
Weißt du auch, wie ich jetzt einen bestimmten Bereich der neuen Zeilen in einer bestimmten Farbe einfärbe und einen bestimmten Text reinschreibe?
sehr schwammige Anforderung.
Ich weiß es.
Als Anregung:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
With Target
If .Column = 1 And .Row > 8 Then
If .Cells.Count = 2 Then
If .Offset(1).MergeArea.Count = 1 Then
Application.ScreenUpdating = False
.Resize(2, 27).Copy
.Offset(1).PasteSpecial xlPasteFormats
.Offset(1) = .Cells(1, 1) + 1
.Offset(1).RowHeight = .Cells(1).RowHeight
.Offset(2).RowHeight = .Cells(2).RowHeight
With .Offset(1, 2).Resize(2, 3)
.Interior.Color = vbRed
.Value = "xxx"
End With
.Offset(1).Select
Cancel = True
Application.CutCopyMode = False
End If
End If
End If
End With
End Sub

Gruß
Rudi

Anzeige
AW: Frage zu einem Programmtext! Mit Code
24.01.2014 08:47:59
Peter
Vielen Dank Rudi, leider klappt das durch den Code noch nicht so ganz, aber das kann ich ja auch nicht erwarten. Vielleicht kriegen wir das ja noch hin.
Also es sollten zwei neue Zeilen beim Rechtsklick eingefügt werden, wobei aber nur Teie des Inhalts der vorherigen Zeile übernommen werden sollen.
Ich habe mal einen Screenshot gemacht.
So sollte es aussehen:
Userbild
Durch meinen aktuellen Quelltext:

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 1 And Target.Row > 8 Then
If Target.Cells.Count  2 Then Exit Sub
If Target.Offset(1, 0).MergeArea.Address  Target.Offset(1, 0).Address Then Exit Sub
Target.Resize(2, 27).Copy
Target.Offset(1, 0).PasteSpecial Paste:=xlPasteFormats
' Target.Resize(2, 27).Copy Destination:=Target.Offset(1, 0)
' Target.Offset(1, 0).Resize(2, 27).ClearContents
Target.Offset(1, 0) = Target.Cells(1, 1) + 1
Target.Offset(1, 0).RowHeight = Target.Cells(1, 1).RowHeight
Target.Offset(2, 0).RowHeight = Target.Cells(2, 1).RowHeight
Cancel = True
End If
End Sub
---> sieht das ganze aber noch so aus:
Userbild
Ich denke, ich habe meinen Wunsch ganz gut beschrieben, oder?
Ich wäre euch wirklich dankbar, wenn mir dabei noch jemand helfen könnte. Dann wäre ich auch erstmal durch mit meinem Programm.
Dieses Forum hat mir bisher echt super dabei geholfen! Vielen Dank an alle!

Anzeige
Antwort zu einem Programmtext! Mit Code
24.01.2014 10:09:53
Rudi
Hallo,
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
With Target
If .Column = 1 And .Row > 8 Then
If .Cells.Count = 2 Then
If .Offset(1).MergeArea.Count = 1 Then
Application.ScreenUpdating = False
.Resize(2, 27).Copy
.Offset(1).PasteSpecial xlPasteFormats
.Offset(1) = .Cells(1, 1) + 1
.Offset(1).RowHeight = .Cells(1).RowHeight
.Offset(2).RowHeight = .Cells(2).RowHeight
.Offset(, 3).Resize(2).Copy .Offset(1, 3)
With .Offset(2, 4).Resize(, 23)
.Interior.Color = RGB(153, 204, 255)
.Value = "NR"
End With
.Offset(1).Select
Cancel = True
Application.CutCopyMode = False
End If
End If
End If
End With
End Sub

Gruß
Rudi

Anzeige
AW: Antwort zu einem Programmtext! Mit Code
24.01.2014 11:03:15
Peter
Wooooow.
Vielen, vielen lieben Dank Rudi!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige