Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Text von Prüfziffer zu Prüfziffer kopieren
#1
Hallo,

ich benötige ein Makro, mit dem ich einen Text anhand eines Merkmals (z.B. Prüfziffer) in einen neuen Reiter kopieren kann.

Der Aufbau ist wie folgt: In Spalte E stehen eine ganze Menge an Daten untereinander, von denen ich nur einen gewissen Teil benötige. Wenn z.B. die Prüfziffer "1" in Spalte E kommt, sollen alle darunter stehenden Werte in die Tabelle 2 kopiert werden, bis in Spalte E die Prüfziffer "2" kommt.

Kann jemand helfen?
Antworten Top
#2
Hallo,

Zitat:Kann jemand helfen?

... bei Deinen spärlichen Angaben eher nicht.

Ein Makro arbeitet mit festen Vorgaben. Da kann man nichts mit "undefinierten Teilmengen"
oder mit "mehr" oder "weniger" oder anderen WischiWaschi-Angaben programmieren.

Das sollte ein Roboter aber wissen.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#3
Der Punkt geht an dich  :19:

Genauer gesagt brauche ich ein Makro, welches einen definierten Textteil in einen neuen Reiter überträgt. Ich habe dir dazu eine Beispieldatei angehängt.

Innerhalb der Datei sollen die drei Felder mit der Bezeichnung "Text" in einen zweiten Reiter eingefügt werden. Wichtig ist hierbei, dass ab der Zahl zwei das Makro stoppt, auch wenn theoretisch noch weitere Textfelder folgen könnten.

Konnte ich deine Fragen beantworten?


Angehängte Dateien
.xlsx   Beispieldatei.xlsx (Größe: 8,39 KB / Downloads: 5)
Antworten Top
#4
Hi

Wenn man wüsste was du vor hast. Für deine Beispielangaben braucht es kein Makro. In Tab2 die Formel

Code:
=WENNFEHLER(INDEX(Tabelle1!$A$1:$A$100;VERGLEICH(1;Tabelle1!$A$1:$A$100;0)+(ZEILE(A1)/(ZEILE(A1)<VERGLEICH(2;Tabelle1!$A$1:$A$100;0)-1)););"")

Gleich hinter Vergleich  steht die Prüfziffer.

Gruß Elex
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • Roboter
Antworten Top
#5
Hallo,

danke für deine Formel. Sie funktioniert super. Wenn jemand dafür noch ein Makro hat, dann nehme ich das auch gerne, aber vielen Dank schon einmal an dich für deine Hilfe.
Antworten Top
#6
Hallo,

vielleicht so?

Code:
Sub prcKopieren()
   Dim rngA As Range, rngB As Range
   Dim lngRow As Long
  
   With Worksheets("Tabelle2")
      lngRow = .Cells(.Rows.Count, 1).End(xlUp).Row
   End With
   With Worksheets("Tabelle1")
      Set rngA = .Columns(5).Find(1, lookat:=xlWhole, LookIn:=xlValues)
      Set rngB = .Columns(5).Find(2, lookat:=xlWhole, LookIn:=xlValues)
      If Not rngA Is Nothing And Not rngB Is Nothing Then
         .Rows(rngA.Row).Resize(rngB.Row - rngA.Row).Copy Worksheets("Tabelle2").Cells(lngRow, 1)
      Else
         MsgBox "Die 1 oder 2 wurde nicht gefunden"
      End If
   End With
End Sub
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • Roboter
Antworten Top
#7
Hallo,

vielen Dank für das Makro. Funktioniert bestens. Ich teste noch ein bisschen, aber es funktioniert wirklich gut. Dankeschön.

Hallo,

könntest du mir noch bitte helfen? Wie müsste das Makro lauten, wenn in Tab2 die Überschrift in E2 soll und der komplette Text in F2 (alle drei Beispielzeilen mit dem Wort "Text")? Derzeitig werden die Überschrift und die Texte untereinander in Tab2 ab A1 geschrieben.

Weißt du, wie das geht?
Antworten Top
#8
Hallo,

meinst Du so?

Code:
Sub prcKopieren()
   Dim rngA As Range, rngB As Range
   Dim lngRow As Long
  
   With Worksheets("Tabelle2")
      lngRow = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
   End With
   With Worksheets("Tabelle1")
      Set rngA = .Columns(5).Find(1, lookat:=xlWhole, LookIn:=xlValues)
      Set rngB = .Columns(5).Find(2, lookat:=xlWhole, LookIn:=xlValues)
      If Not rngA Is Nothing And Not rngB Is Nothing Then
'         .Rows(rngA.Row).Resize(rngB.Row - rngA.Row).Copy Worksheets("Tabelle2").Cells(lngRow, 1)
        .Rows(rngA.Row).Resize(rngB.Row - rngA.Row).Copy
        Worksheets("Tabelle2").Cells(lngRow, 1).PasteSpecial Transpose:=True
        Application.CutCopyMode = False
      Else
         MsgBox "Die 1 oder 2 wurde nicht gefunden"
      End If
   End With
End Sub
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • Roboter
Antworten Top
#9
Hallo,

vielen Dank für deine Hilfe. Ich teste das ganze und gebe dir eine Rückinfo.
Antworten Top
#10
Funktioniert alles super. Danke für deine tolle Hilfe.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste