Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1068to1072
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 automatisch

Zeilen einfügen automatisch
24.04.2009 10:01:32
utsch
Hallöchen,
ich hoffe mir kann einer helfen.
Ich möchte in einer Exceltabelle eine bestimmte vorformatierte Zeile (im Bsp. Zeile mit "Hinweistext") vor und hinter einer bestimmten Zeile ("Normalgruppe") einfügen. Da die Tabelle einpaar tausend Positionen hat und die Struktur sich immer wiederholt, möchte ich das über ein Makro oder so automatisieren.
Im Vorraus besten Dank.
https://www.herber.de/bbs/user/61394.xls

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen einfügen automatisch
24.04.2009 12:52:16
fcs
Hallo utsch,
im Prinzip geht es mit dem folgenden Makro
Gruß
Franz

Sub HinweistextKopieren()
Dim Zeile As Long
Dim RowHinweis As Range, wks As Worksheet
Dim strSuchen As String
On Error GoTo fehler
'zu kopierende Zeile wählen
Set RowHinweis = Application.InputBox( _
Prompt:="Bitte Zelle in zu kopierender Zeile selektieren", _
Title:="Hinweis kopieren", _
Default:=ActiveCell.Address, _
Type:=8)
Set RowHinweis = RowHinweis.EntireRow
'Suchbegriff eingeben
strSuchen = InputBox(Prompt:="Bitte zu Suchenden Begriff in Spalte A eingeben", _
Title:="Hinweis kopieren", _
Default:="Normalgruppe")
If strSuchen  "" Then
Set wks = ActiveSheet
With wks
Application.ScreenUpdating = False
'von der letzen Zeile aufwärts Spalte A prüfen
For Zeile = .Cells(.Rows.Count, 1).End(xlUp).Row To 1 Step -1
'Prüfen ob Zelle in Spalte A = Suchbegriff
If .Cells(Zeile, 1) = strSuchen Then
'Prüfen, ob Hinweiszeile schon unterhalb eingefügt
If .Cells(Zeile + 1, 1)  RowHinweis.Range("A1") Then
RowHinweis.Copy
.Rows(Zeile + 1).Insert
End If
'Prüfen, ob Hinweiszeile schon oberhalb eingefügt
If .Cells(Zeile - 1, 1)  RowHinweis.Range("A1") Then
RowHinweis.Copy
.Rows(Zeile).Insert
End If
End If
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
MsgBox "Fertig"
End With
End If
fehler:
With Err
If .Number  0 Then
If .Number = 424 Then 'Zellauswahl wurde abgebrochen
'do nothing
Else
MsgBox "Fehler-Nr. " & .Number & vbLf & .Description
End If
Application.ScreenUpdating = True
End If
End With
End Sub


Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige