Thema Datum  Von Nutzer Rating
Antwort
02.01.2021 22:46:48 Friedrich
NotSolved
Blau Zerteilen einer langen Spalte in kleinere Spalten
03.01.2021 00:13:02 ralf_b
NotSolved
03.01.2021 19:51:08 Gast1775
NotSolved
03.01.2021 20:02:34 ralf_b
Solved
03.01.2021 20:55:29 Friedrich
NotSolved
03.01.2021 21:05:33 ralf_b
NotSolved

Ansicht des Beitrags:
Von:
ralf_b
Datum:
03.01.2021 00:13:02
Views:
511
Rating: Antwort:
  Ja
Thema:
Zerteilen einer langen Spalte in kleinere Spalten
versuchs mal damit. die 1 wird in Spalte B gesucht, eingefügt wird ab Spalte 4

Sub Findezellen()
   Dim f As Range, a As String
   Dim lstart As Long
   Dim lend As Long
   Dim col As Long, cnt As Long, loletzte As Long
   col = 4                                                  'startspalte zum Einfügen
   loletzte = Range("B1").End(xlDown).Row                   'letzte benutzte Zeile in Spalte B
   
   With Range("B1:B" & loletzte)
      Set f = .Find(what:=1, LookIn:=xlValues, lookat:=xlWhole) 'suche nach 1 in Spalte B
          a = f.Address                                         'Adresse für Schleifenabbruch merken
         lstart = f.Row                                         'Zeilennummer merken
         Do
            Set f = .FindNext(f)                                'nächsten wert 1 suchen
            If Not f Is Nothing Then
              
              lend = f.Row                                       'zeilennummer merken
              If lend < lstart Then                              'wenn suche von vorne beginnt
                If lstart < loletzte Then                        'wenn nach der letzten 1 noch werte sind
                  Cells(2, col + cnt).Resize(loletzte - lstart, 2).Value = _
                        Cells(lstart, 2).Resize(loletzte - lstart, 2).Value
                Else
                  Exit Sub
                End If
              Else
                'kopieren des Wertebereiches
                Cells(2, col + cnt).Resize(lend - lstart, 2).Value = _
                        Cells(lstart, 2).Resize(lend - lstart, 2).Value
                cnt = cnt + 2     ' Spaltenzähler hochsetzen
                lstart = f.Row     'zeilennumer auf nächsten Bereich setzen
              End If
              
            End If
         Loop While f.Address <> a  'Schleifen Abbruch Bedingung
      End If
   End With
  
End Sub

 

Gruß

rb


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
02.01.2021 22:46:48 Friedrich
NotSolved
Blau Zerteilen einer langen Spalte in kleinere Spalten
03.01.2021 00:13:02 ralf_b
NotSolved
03.01.2021 19:51:08 Gast1775
NotSolved
03.01.2021 20:02:34 ralf_b
Solved
03.01.2021 20:55:29 Friedrich
NotSolved
03.01.2021 21:05:33 ralf_b
NotSolved