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

Zeilen einfügen und mit Werten füllen

Zeilen einfügen und mit Werten füllen
03.12.2015 09:59:12
Christian
Hallo liebe Community,
wir sind aktuell am Verzweifeln.
Wir benötigen ein Makro welches automatisch ausgeführt wird, wenn eine Zeile eingefügt wird.
Dieses Makro müsste Werte bestimmter Zellen in die neue Zeile kopieren. Wir haben es bis jetzt hinbekommen, dass dies über ein selbst ausführbares Makro funktioniert. Da wir aber Bedenken haben, dass es den User überfordert einen separaten Button zu klicken um eine Zeile einzufügen hätten wir dies gerne automatisch ausgeführt wird wenn die Excel Funktion "Zellen einfügen" angeklickt wird.
Das Script sieht bisher so aus:

Sub ZeileEinfügen()
Dim lngReihe As Long
lngReihe = ActiveCell.Row + 1
If lngReihe > 1 Then
Rows(lngReihe).EntireRow.Insert
'Cells(lngReihe, 1).Resize(, 2) = Cells(lngReihe - 1, 1).Resize(, 2).Value
Cells(lngReihe - 1, 1).AutoFill Destination:=Cells(lngReihe - 1, 1).Resize(2), Type:= _
xlFillDefault
Cells(lngReihe - 1, 4).AutoFill Destination:=Cells(lngReihe - 1, 4).Resize(2), Type:= _
xlFillDefault
Cells(lngReihe - 1, 6).AutoFill Destination:=Cells(lngReihe - 1, 6).Resize(2), Type:= _
xlFillDefault
Cells(lngReihe - 1, 7).AutoFill Destination:=Cells(lngReihe - 1, 7).Resize(2), Type:= _
xlFillDefault
Cells(lngReihe - 1, 8).AutoFill Destination:=Cells(lngReihe - 1, 8).Resize(2), Type:= _
xlFillDefault
Cells(lngReihe - 1, 3).AutoFill Destination:=Cells(lngReihe - 1, 3).Resize(2), Type:= _
xlFillDefault
End If
End Sub

Alle Versuche mit Private Sub Worksheet_SelectionChange(ByVal Target As Range) etc. haben Endlosschleifen verursacht die Excel zum Absturz bringen.
Vielen Dank schon mal für Eure Hilfe!
Grüße
Christian

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Kontextmenu umprogrammieren
03.12.2015 10:53:30
ransi
Hallo Chrtistian,
Folgendes ist denkbar:
Deine Datei wird geöffnet oder aktiviert:
Die MenuFunktionen "Zellen einfügen..." werden umprogrammiert.
Deine Datei wird geschlossen oder deaktiviert:
Die MenuFunktionen "Zellen einfügen..." werden wieder zurückgesetzt.
Stürzt dein Excel allerdings ab während deine Datei aktiv ist, hast du ein verstümmeltes Kontextmenu.
ransi

AW: Kontextmenu umprogrammieren
03.12.2015 11:25:52
Christian
Hallo Ransi,
danke für deine Antwort!
Wie programmiere ich in Excel denn eine Menü Funktion um? Meine Recherchen im Netz verlaufen leider ins leere.
Christian

Anzeige
AW: Kontextmenu umprogrammieren
03.12.2015 11:36:37
mumpel
Hallo!
Indem Du die Funktion über die Command-Ebene in der RibbonX-Definition umlenkst. Vorteil ist dass Du damit nicht nur das Kontextmenü umlenkst, sondern den kompletten Befehl "Zellen einfügen..." (auch die Schaltflächen im Menüband). RibbonX-Workshop
Gruß, René

AW: Kontextmenu umprogrammieren
03.12.2015 13:56:46
Christian
Danke auch dir René,
der Weg über die RibbonX Sache war dann doch etwas zu aufwendig für uns.
Haben es nun folgendermaßen gelöst, vll. hilft das ja jemanden:
In dieser Arbeitsmappe:
Sub Workbook_Open()
Dim ctrl
Set ctrl = Application.CommandBars("cell").Controls.Add
ctrl.Caption = "ZeileEinfügen"
ctrl.OnAction = "Modul1.ZeileEinfügen"
ctrl.FaceId = 122
End Sub
Und
Sub Workbook_BeforeClose(Cancel As Boolean)
Modul2.kontextmenue_loeschen
End Sub
Im Modul2:
Sub kontextmenue_loeschen()
On Error Resume Next
CommandBars("Cell").Controls("ZeileEinfügen").Delete
End Sub

Anzeige

328 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige