Thema Datum  Von Nutzer Rating
Antwort
17.12.2014 11:00:30 Tim O.
NotSolved
17.12.2014 11:08:19 Gast1822
NotSolved
Rot Wenn Zelle gefüllt, dann kopieren
17.12.2014 15:50:06 Gast11168
NotSolved

Ansicht des Beitrags:
Von:
Gast11168
Datum:
17.12.2014 15:50:06
Views:
1026
Rating: Antwort:
  Ja
Thema:
Wenn Zelle gefüllt, dann kopieren

ActiveCell.EntireRow.Select

'

'

ActiveCell.Offset(1, 0).Select 'Befehl um eine weitere Zeile nach unten zu springen

= die Suche wird in Spalte 1 fortgesetzt

und ...

bei dem ganzen hin und her select droht ohnedies  der Augentod ;-)

Option Explicit

Sub zeile_kopierenForNext()
'vom Tabellenblatt "try" ab Zelle "P2" in der Spalte nach unten
'wenn nicht leer (Zwischenräume leer)
'die ganze Zeile
' in die Tabelle "Tabelle1" ab Zelle "A1" untereinander
'
'ohne hin und her
'ohne Copy und Paste
'mit For... Next
'
Dim I As Long                                         'Zeilen u. Spalten sind Typ LONG !!
Dim lngVon As Long, lngBis As Long, lngSpalte As Long

Dim Y As Long                                         'Zielzeile
Y = 1                                                 ' in Tabelle1

lngVon = Sheets("Try").Range("P2").Row                'Beginn Zeile
lngSpalte = Sheets("Try").Range("P2").Column          ' in Spalte

'von ganz unten nach oben,
'die unterste Zeile (Rows.Count) ist überall gleich
lngBis = Sheets("Try").Cells(Sheets("Try").Rows.Count, lngSpalte).End(xlUp).Row

For I = lngVon To lngBis
   If Sheets("Try").Cells(I, lngSpalte).Value <> "" Then
      Sheets("try").Rows(I).Copy Destination:=Sheets("Tabelle1").Cells(Y, 1)
      'Ziel ist immer die erste Zelle wo und dann erhöhen
      Y = Y + 1
   End If
Next I

End Sub

Sub zeile_kopierenForEach()
'vom Tabellenblatt "try" ab Zelle "P2" in der Spalte nach unten
'wenn nicht leer (Zwischenräume leer)
'die ganze Zeile
' in die Tabelle "Tabelle1" ab Zelle "A1" untereinander
'
'ohne hin und her
'ohne Copy und Paste
'mit For... Each
'
'mit Bereichen
Dim rngQuelle As Range, rngZelle As Range, rngZiel As Range

Set rngQuelle = Sheets("Try").Range("P2")             'Beginn Zelle
Set rngQuelle = Range(rngQuelle, rngQuelle.Offset(Rows.Count - rngQuelle.Row).End(xlUp))

Set rngZiel = Sheets("Tabelle1").Range("A1")          'Beginn Ziel

'über den Bereich
For Each rngZelle In rngQuelle
   If rngZelle.Value <> "" Then
      rngZelle.EntireRow.Copy Destination:=rngZiel
      Set rngZiel = rngZiel.Offset(1)                 'Ziel 1 nach unten
   End If
Next rngZelle

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
17.12.2014 11:00:30 Tim O.
NotSolved
17.12.2014 11:08:19 Gast1822
NotSolved
Rot Wenn Zelle gefüllt, dann kopieren
17.12.2014 15:50:06 Gast11168
NotSolved