Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
904to908
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
904to908
904to908
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Einfügen und ersetzen

Einfügen und ersetzen
10.09.2007 18:28:39
Salim

Hallo zusammen,
ich habe folgendes Problem und würde mich über einen Feedback freuen:
Ich habe 3 Tabellenblätter (A,B,C), die gleich aufgebaut sind.
Wie würde einen Code aussehen, der folgendes macht:
Tabelle 1!Zeile 2 markieren
3 Zeilen einfügen
Wort Standardblatt in jeder Zeile durch Name des jeweiligen Tabellenblattes ersezten.
Tabelle 1!Zeile 1 markieren
3 Zeilen einfügen
Wort Standardblatt in jeder Zeile durch Name des jeweiligen Tabellenblattes ersezten.
Jetzt sollte Tabelle1 so aussehen:
A
B
C
Summe1
A
B
C
Summe2
Hätte jemand eine Idee wie so ein Code aussehen könnte?
Gruss
Salim

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

Betreff
Datum
Anwender
Anzeige
AW: Einfügen und ersetzen
11.09.2007 10:57:53
Renee
Hi Salim,
Warum sollte untiges so aussehen, wenn obiges gemacht ?
Ich versteh nur Bahnhof.
Wo steht Standardblatt?
Was hat das mit den 3 eingefügten Zeilen zu tun?
Woher komm plötzlich Summe1 & Summe2 ?
Wer/was schreibt A,B,C in die Zeilen ?
Was soll mit den 3 Tabellenblätter (A,B,C) geschehen?
Greetz Renee

AW: Einfügen und ersetzen
11.09.2007 11:57:30
Salim
Hallo Renee,
sorry, wollte dass irgenwie vereinfachen und dadurch ist es wahrscheinlich total unverständlich geworden. Ich habe mittlerweile selbst ein bisschen dran gebastelt.

Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
ActiveSheet.Unprotect
Rows("7:7").EntireRow.Hidden = False
For i = 10000 To 1 Step -1
If Cells(i, 4) = "Gesamt" Then
Rows("7:7").Copy
Cells(i, 1).EntireRow.Insert
End If
Next i
Application.CutCopyMode = False
Rows("7:7").EntireRow.Hidden = True
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingColumns:=True, AllowFiltering:=True
Application.ScreenUpdating = True
End Sub


Dieser Code suche den Bereich D1:D10000 durch nach dem Wort "Gesamt" und fügt eine kopierte Zeile ein.
Der nächste Step: für alle relevanten Worksheets. Habe ich ausprobiert, allerdings kommt eine Fehlermeldung: Insert Methode des Range Objekts konnte nicht ausgeführt werden.


Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
ActiveSheet.Unprotect
Rows("7:7").EntireRow.Hidden = False
Dim lSh As Worksheet, liSumme As Integer
With ThisWorkbook
For Each lSh In .Sheets
If .Sheets(lSh.Name).Range("A1").Value = "Projektblatt" Then
For i = 10000 To 1 Step -1
If Cells(i, 4) = "Gesamt" Then
Rows("7:7").Copy
        Cells(i, 1).EntireRow.Insert
End If
Next i
Application.CutCopyMode = False
Rows("7:7").EntireRow.Hidden = True
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingColumns:=True, AllowFiltering:=True
End If
Next
End With
Application.ScreenUpdating = True
End Sub


Damit wollte ich erreichen, dass für jeden relevanten Worksheet eine Zeile eingefügt wird.
In der kopierten Zeile 7 stehen Formeln drin, die sich auf den Arbeitsblatt "Standardblatt" beziehen. Ich möchte dann für jeden relevanten Worksheet, eine Zeile einfügen und Standardblatt durch den Namen des Worksheets ersetzten, damit die Formeln auf das richtige Blatt zugreifen.
Im nächsten Schritte möchte ich die Suche nach verschiedenen zahlreichen Begriffen einfügen (Also nicht nur "Gesamt" sondern auch andere).
Am Schluss soll folgendes passieren:
1: Für jeden relevanten Sheet
2: Für jeden der angegebenen Begriffe, die in D1:D10000 gesucht werden
3: Zeile einfügen und Standardblatt durch Sheet.Name ersetzten
4: Nächster Begriff
5: Nächter Arbeitsblatt bis alle Arbeitsblätter durch sind
Ich hoffe, dass ganze ist ein bisschen klarer. Auf jeden Fall wäre ich dankbar über einen Tipp, warum die Fehlermeldung kommt ;)
Danke und Gruss
Salim

Anzeige
AW: Einfügen und ersetzen
11.09.2007 16:38:49
Renee
Hi Salim,
Ich hab Deinen Code nicht studiert.
Eigentlich müsste so, der Fehler nicht auftreten:

If Cells(i, 4) = "Gesamt" Then
Rows(i).Insert (xlDown)
Rows(7).Copy Destination:=Cells(i, 1)
End If


Greetz Renee

AW: Einfügen und ersetzen
11.09.2007 18:07:00
Salim
Hallo Renee,
Danke für dein Feedback! Ich habe es gerade zum Laufen gebracht! Um ehrlich zu sein weiss ich selber nicht woran dass lag, ich habe den Bug "aus Versehen" rausgenommen. Na ja, besser als andersrum.
Gruss
Salim

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige