Sub Tabellenblätter Neu Und Füllen()

Hallo liebe Helferlein,
es ist wiedermal soweit, sitze hier vor meinem Code und finde meinen Fehler nicht.
Könnte sich einer den Code mal ansehen und mir sagen was ich vergessen habe.
Also die Namen für die Tabellenblätter werden erstellt .Auch wird der erste gefundene Wert in das passende Tabellenblatt eingetragen, aber es gibt mehrere Zeilen die eingetragen werden müssen.
Beispiel Tabelleblattname = wundervoll
Aber Spalte A in der Tabelle Daten hat 38 mal wundervoll 
Die müssen alle in das Tabellenblatt „wundervoll“.
Für Eure Hilfe wie immer dankbar.
viele Grüße 
Susanne
Sub TabellenblätterNeuUndFüllen()  
Dim wsSrc As Worksheet  ’ die Quelltabelle  
Dim iSrc As Long        ’ Zeilenummer in der Quelle  
Dim iDst As Long        ’ Zeilennummer im Ziel  
Dim strKey As String    ’ ein Tabellenname aus Spalte A  
Dim Blatt As Worksheet’  
Dim Blatt As Long     
Set wsSrc = Worksheets(„Bestand“) ’      ’ Schleife über alle Zeilen bestimmt aus der letzten Zeile von Spalte A  
For iSrc = 7 To wsSrc.cells(wsSrc.Rows.Count, 1).End(xlUp).Row         ’ Der Wert aus Spalte A ohne Leerzeichen vorne und hinten     
strKey = Trim(wsSrc.cells(iSrc, 1).Value)           ’ keine Leerzellen nehmen 
  If Len(strKey) Then         ’ Falls die Tabelle nicht existiert anlegen, Zeile 1 und Zeile iSrc kopieren  
If Not WorksheetExists(strKey) Then        
  Worksheets.Add After:=Worksheets(Worksheets.Count)     
ActiveSheet.Name = strKey      
  wsSrc.Rows(6).Copy Rows(6)           
wsSrc.Rows(iSrc).Copy Rows(7)    
    Else’                         ’ letzte Zeile aus Spalte A bestimmen    
  iDst = ActiveSheet.cells(Rows.Count, 1).End(xlUp).Row      
  ’ und die Zeile kopieren           
    wsSrc.Rows(iSrc).Copy ActiveSheet.Rows(iDst)  
End If
 End If 
Next
End Sub
’’ testet ob die Tabelle mit dem Namen „strName“ existiertPublic Function Worksheetvorhanden(ByVal strName As String) As Boolean  
On Error Resume Next   WorksheetExists = Not Worksheets(strName) Is Nothing  
End Function

Könnte sich einer den Code mal ansehen und mir sagen was ich
vergessen habe.
Also die Namen für die Tabellenblätter werden erstellt .Auch
wird der erste gefundene Wert in das passende Tabellenblatt
eingetragen, aber es gibt mehrere Zeilen die eingetragen
werden müssen.

Hallo Susanne,

du überschreibst dir 38mal die gleiche Zeile. Nimm das
iDst = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
oder das
wsSrc.Rows(iSrc).Copy ActiveSheet.Rows(iDst + 1)

Mache den Funktionsnamen wieder stimmig.

Das ActiveSheet kann m.E, zu Problemen führen wenn in A die Namen nicht in Blöcken stehen…

Gruß
Reinhard

Hallo Reinhard,
vielen lieben Dank.
Hab mal wieder den Wald vor lauter Bäumen nicht gesehen.

Leider habe ich das Problem, die Zeilen werden bei nochmaligen ausführen des Makros doppelt in die Tabellenblätter eingetragen. Könntest Du bitte nochmal Hand anlegen.
Könntest Du mir vielleicht den Code, nicht für ganze Zeilen, sondern auf einen Bereich von A bis K abändern.
Viel Grüße
Susanne

Leider habe ich das Problem, die Zeilen werden bei nochmaligen
ausführen des Makros doppelt in die Tabellenblätter
eingetragen. Könntest Du bitte nochmal Hand anlegen.
Könntest Du mir vielleicht den Code, nicht für ganze Zeilen,
sondern auf einen Bereich von A bis K abändern.

Hallo Susanne,

ich hatte bislang keine Zeit. Ungetestet sag ich mal daß bei jeder zusätzlichen Makroausführung Zeilen angehängt werden. Und das soll im Code verhindert werden?

Gruß
Reinhard

Leider habe ich das Problem, die Zeilen werden bei nochmaligen
ausführen des Makros doppelt in die Tabellenblätter
eingetragen. Könntest Du bitte nochmal Hand anlegen.
Könntest Du mir vielleicht den Code, nicht für ganze Zeilen,
sondern auf einen Bereich von A bis K abändern.

Hallo Susanne,
Hallo Reinhard
ich hatte bislang keine Zeit. Ungetestet sag ich mal daß bei
jeder zusätzlichen Makroausführung Zeilen angehängt werden.
Und das soll im Code verhindert werden?

Ja,bitte.
Es sollen keine doppelten Zeilen eingefügt werden.
Das habe ich mit doppelten Zeilen löschen gelöst.

Könntest Du mir vielleicht meinen Code so ab ändern das nicht mehr ganze Zeilen kopiert werden sondern nur der Bereich von A bis K…kopiert wird.

Ich habe noch ein anders Problem. Es sollte in die Zelle B2 (Tab.Bestand) die Nummer bzw. String eines Tabellenblattes eingegeben werden und damit aktiviert werden. Leider funktioniert mein Code nicht.

Private Sub Worksheet_Change(ByVal Target As Range)

Dim Zellbereich As Range
Set Zellbereich = Range("$B$2")
On Error Resume Next
If Target.Address = Zellbereich.Address Then
Blatt = Target
Sheets(Blatt).Activate
Else
End If
End Sub

Für Deine Hilfe möchte mich schon einmal ganz herzlich Bedanken.

viele Grüße
Susanne

Gruß
Reinhard

Hallo Susanne,

ich hatte bislang keine Zeit. Ungetestet sag ich mal daß bei
jeder zusätzlichen Makroausführung Zeilen angehängt werden.
Und das soll im Code verhindert werden?

Ja,bitte.
Es sollen keine doppelten Zeilen eingefügt werden.
Das habe ich mit doppelten Zeilen löschen gelöst.

das ist aber kein Verhindern. Lade bitte eine Mappe hoch mit fileupload, s. FAQ:2606
Ich möchte darin deinen aktuellen Code sehen. Wie startest du eigentlich den Code? In einer Spalte paarmal „wundervoll“ aber auch paar andere Begriffe mehrmals. Im Spaltenaufbau wie im Original bezüglich Sortierung, Blockbildung usw.

Gruß
Reinhard

Hallöchen

hier der Link
[URL=[http://www.file-upload.net/download-9191035/--bersic…](http://www.file-upload.net/download-9191035/--bersicht-.xlsm.html]--bersicht-.xlsm[/URL)]

Hoffe die Mappe hilft weiter
auf Antwort wartend
ganz viele Grüße und Herzlich Dank
Susanne

Hallo Susanne,

http://www.file-upload.net/download-9191035–bersich…

mit dieser Syntax wäre dein Link anklickbar gewesen.

Hoffe die Mappe hilft weiter

Teils teils, was bedeutet „übertragen“?

Z.B. in Blatt 11111 sind Zeile 9 und Zeile 11 gleich, wieso sind die nicht doppelt?

Gruß
Reinhard

Hallo Reinhard
Teils teils, was bedeutet „übertragen“?

Ist nur zum Prüfen ob auch alles aufs andere Blatt übertragen wird.

Z.B. in Blatt 11111 sind Zeile 9 und Zeile 11 gleich, wieso
sind die nicht doppelt?
Ich habe nur einige gekennzeichnet, wenn auf dem Tabellenblatt der Button Blätter bereinigen gedrückt wird, werden die doppelten gelöscht. Auch nur der Überprüfung halber.
Gruß
Susanne

Hallo Reinhard
Teils teils, was bedeutet „übertragen“?

Ist nur zum Prüfen ob auch alles aufs andere Blatt übertragen
wird.

Z.B. in Blatt 11111 sind Zeile 9 und Zeile 11 gleich, wieso
sind die nicht doppelt?
Ich habe nur einige gekennzeichnet, wenn auf dem Tabellenblatt der Button Blätter bereinigen gedrückt wird, werden die doppelten gelöscht. Auch nur der Überprüfung

halber. Der Eintrag ist doppelt habe ihn aber nicht an das Ende des Bereichs gestellt.,dadurch wird er auch nicht gelöscht. Ist ein Fehler meinerseits gewesen.

Gruß
Susanne

Liebe Experten,
ich hätte nicht gefragt, wenn ich keine Hilfe gebraucht hätte. Leider wiedermal keine Antwort erhalten. Nicht einmal ein Anhaltspunkt.
Bin enttäuscht und werde auch hier nicht mehr Fragen.
Für alle hilfreichen Tipps und Ratschlägen möchte ich mich nochmal bei allen die mir geholfen habe bedanken.
Gruß
Susanne

Liebe Susanne

ich hätte nicht gefragt, wenn ich keine Hilfe gebraucht hätte.

klingt logisch.

Leider wiedermal keine Antwort erhalten.

Das ist ein äußerst heftiger Vorwurf an alle hier im Brett. Ich halte das aber für einen haltlosen Vorwurf. Kurzbeweis ist diese Beitragsfolge. Ich sehe da durchaus Antworten von mir. Du nicht?

Nicht einmal ein Anhaltspunkt.

Falls es so gewesen ist was ich nicht glaube gibt es Gründe dafür.

Bin enttäuscht und werde auch hier nicht mehr Fragen.

Du kannst machen was du möchtest. Z.B. Denken. Darüber nachdenken warum du schon wiedermal das Gefühl hast deine Forenanfragen werden völlig mies behandelt. Und was dein Anteil daran sein könnte.

Für alle hilfreichen Tipps und Ratschlägen möchte ich mich
nochmal bei allen die mir geholfen habe bedanken.

Aha, also dochmal hilfreiche Antworten erhalten *feststell*

@Susanne, jetzt zu/bei dieser Beitragsfolge, da kann ich dir einigermaßen genau benennen warum du bislang noch keine Vba-Lösung von mir hast.
Aber du willst ja hier nix mehr fragen.

Gruß
Reinhard

Liebe Susanne
bislang habe ich mich herausgehalten, aber nu isset gutt.

Du wirfst ein Stück Code auf den Markt, bettelst darum, dass andere Leute in dem Mist wühlen, bist aber nicht mal in der Lage, Aufgabe oder Problem angemessen zu beschreiben. Nach dem 3. Versuch, Dir die Würmer aus der Nase zu ziehen (Reinhard, mit Verlaub: Du bist ein liebes Schaf), flennst Du, Dir hülfe keiner. Aus meiner (boshaften) Sicht: hoffentlich; hier werden keine Hausaufgaben erledigt.

Gruß Ralf