Thema Datum  Von Nutzer Rating
Antwort
15.12.2017 08:10:54 Helmut
Solved
15.12.2017 15:54:19 Werner
NotSolved
15.12.2017 16:37:43 Helmut
NotSolved
15.12.2017 16:06:25 Werner
NotSolved
15.12.2017 16:39:37 Helmut
NotSolved
15.12.2017 19:00:20 Mackie
NotSolved
15.12.2017 20:12:00 Helmut
NotSolved
15.12.2017 20:42:18 Mackie
NotSolved
15.12.2017 21:22:58 Helmut
NotSolved
15.12.2017 22:59:57 Mackie
NotSolved
15.12.2017 23:18:38 SF
NotSolved
Blau Zeilen mit X verschieben
16.12.2017 12:16:27 Gast70117
NotSolved
16.12.2017 15:08:14 Helmut
NotSolved

Ansicht des Beitrags:
Von:
Gast70117
Datum:
16.12.2017 12:16:27
Views:
632
Rating: Antwort:
  Ja
Thema:
Zeilen mit X verschieben

Nun ich denke, wegen Spalte "B"  - oder wozu die Aufregung?

Option Explicit

Private Sub CommandButton1_Click()

   MoveIt Sheets("Tabelle1"), Sheets("Tabelle2")

End Sub

Sub MoveIt(ShFrom As Worksheet, ShTo As Worksheet)
Dim rngX As Range                                  'Kriterium Datum in Spalte B
Dim rngTo As Range                                 'Kriterium Ziel in Spalte B
Dim rngMove As Range                               'zu verschieben
Dim c As Range
Dim x As Long

On Error GoTo NIX

   With ShFrom                                     'Suchbereich
      With .Columns(1)
      Set rngX = .Cells.Find("*", .Cells(1), -4123, 2, 1, 2, False)
      Set rngX = .Range(.Cells(5), rngX.Offset(1).End(xlUp))
      Set rngX = rngX.Offset(1).Resize(rngX.Rows.Count - 1)
      End With
   End With
      
   With ShTo                                       'Zielbereich
      With .Columns(3)
      Set rngTo = .Cells.Find("*", .Cells(1), -4123, 2, 1, 2, False)
      Set rngTo = rngTo.Offset(1)
      End With
   End With
   
   'Verschiebe C:M erst als Kopie
   For x = 1 To rngX.Cells.Count
      If UCase(rngX.Cells(x).Value) = "X" Then
         Set rngMove = rngX.Cells(x)
         Range(rngMove.Offset(, 2), rngMove.Offset(, 12)).Copy rngTo
         Set rngTo = rngTo.Offset(1)
      End If
   Next x
      
   'nach X hochschieben
   For x = rngX.Cells.Count To 1 Step -1
      If UCase(rngX.Cells(x).Value) = "X" Then
         Set rngMove = rngX.Cells(x)
         Set c = Range(rngMove.Offset(, 2), rngMove.Offset(, 2).End(xlDown))
         If c.Rows.Count > 616 Then
            Set c = rngMove.Offset(, 2)
         Else
            Set c = c.Resize(c.Rows.Count + 1, 11)
         End If
         Set c = c.Resize(, 11)
         Set c = c.Offset(1).Resize(c.Rows.Count + 1)
         c.Copy rngMove.Offset(, 2)
         rngMove.ClearContents
      End If
   Next x
   
On Error GoTo 0
NIX:
   
End Sub

 


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
15.12.2017 08:10:54 Helmut
Solved
15.12.2017 15:54:19 Werner
NotSolved
15.12.2017 16:37:43 Helmut
NotSolved
15.12.2017 16:06:25 Werner
NotSolved
15.12.2017 16:39:37 Helmut
NotSolved
15.12.2017 19:00:20 Mackie
NotSolved
15.12.2017 20:12:00 Helmut
NotSolved
15.12.2017 20:42:18 Mackie
NotSolved
15.12.2017 21:22:58 Helmut
NotSolved
15.12.2017 22:59:57 Mackie
NotSolved
15.12.2017 23:18:38 SF
NotSolved
Blau Zeilen mit X verschieben
16.12.2017 12:16:27 Gast70117
NotSolved
16.12.2017 15:08:14 Helmut
NotSolved