Live-Forum - Die aktuellen Beiträge
Datum
Titel
18.04.2024 18:04:29
18.04.2024 16:33:24
Anzeige
Archiv - Navigation
1444to1448
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Copy_Paste

Copy_Paste
31.08.2015 11:53:47
Raphi
Hi Excelexperten,
für meine Bachelorthesis bin ich beauftragt eine kleines PM-Tool in Excel zu erstellen. Aktuell stehe ich vor folgendem Problem
1. Ich möchte von meiner Tabelle ("P3_Gantt_Daten") alle Zeilen (15 bis 95) der Spalte C auf den Begriff "Meilenstein" untersuchen.
2. Wenn der Begriff Meilenstein enthalten ist, soll der Wert aus der Tabelle ("P3_Gantt_Daten") in eine Tabelle ("P3_MSTA_Daten_KW") (untereinander) kopiert werden.
Das kopieren an sich klappt, jedoch weiss ich nicht wie ich den Code schreiben muss, damit immer die nächste Zeile in der Tabelle ("P3_MSTA_Daten_KW") befüllt wird.
Mit meiner Formel wird aktuell immer von der Tabelle ("P3_Gantt_Daten") auf die Tabelle ("P3_MSTA_Daten_KW") verwiesen. Leider habe ich dadurch eine Menge leere Zeilen....
Ich hoffe ich habe mich verständlich ausgedrückt ?
Über eure Unterstützung würde ich mich sehr freuen.
Viele Grüße
Option Explicit
Sub Test_Copy()
Dim i As Integer
Dim szStr As String
For i = 15 To 95
If Sheets("P3_Gantt_Daten").Cells(i, 3).Value = "Meilenstein" Then
Sheets("P3_MSTA_Daten_KW").Cells(i, 2).Value = Sheets("P3_Gantt_Daten").Cells(i, 2).Value
Sheets("P3_MSTA_Daten_KW").Cells(i, 1).Value = Sheets("P3_Gantt_Daten").Cells(i, 10).Value
End If
Next i
End Sub
Userbild
Userbild

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Copy_Paste
31.08.2015 12:03:33
Rudi
Hallo,
eine Möglichkeit:
Sub Test_Copy()
Dim i As Integer, LastRow As Long
LastRow = Sheets("P3_MSTA_Daten_KW").Cells(Rows.Count, 1).End(xlUp).Row + 1
Dim szStr As String
For i = 15 To 95
If Sheets("P3_Gantt_Daten").Cells(i, 3).Value = "Meilenstein" Then
Sheets("P3_MSTA_Daten_KW").Cells(LastRow, 2).Value = Sheets("P3_Gantt_Daten").Cells(i, 2). _
Value
Sheets("P3_MSTA_Daten_KW").Cells(LastRow, 1).Value = Sheets("P3_Gantt_Daten").Cells(i, 10) _
.Value
LastRow = LastRow + 1
End If
Next i
End Sub

Gruß
Rudi

AW: Copy_Paste
31.08.2015 12:15:29
Herbert
Hallo Rudi,
würdest Du BITTE mal hier hin sehen (https://www.herber.de/forum/messages/1445037.html), ich bräuchte Deine Hilfe! Danke!
Servus

Anzeige
siehe dort! owT
31.08.2015 13:24:19
Rudi

AW: Copy_Paste
31.08.2015 13:39:08
Raphi
Hallo Rudi,
vielen Dank für deine schnelle Antwort.
Funktioniert alles Prima nur leider beginnt er mit der Eintragung in Zeile 95 statt in 15.
Ich habe mich etwas gespielt aber weiss nicht wie ich das "count" manipulieren soll.....
Könntest du mir da bitte nochmal auf die Spünge helfen ?
Viele Grüße,
Raphi
Userbild

AW: Copy_Paste
31.08.2015 14:59:23
Raphi
Hi Werner,
hast du evtl. einen Lösungsvorschlag für das Problem ?

AW: Copy_Paste
01.09.2015 08:30:00
Werner
Hallo Raphi,
hat dir Rudi ja schon geliefert.
Sub Test_Copy()
Dim i As Integer, LastRow As Long
LastRow = 15
Dim szStr As String
For i = 15 To 95
If Sheets("P3_Gantt_Daten").Cells(i, 3).Value = "Meilenstein" Then
Sheets("P3_MSTA_Daten_KW").Cells(LastRow, 2).Value = Sheets("P3_Gantt_Daten").Cells( _
i, 2). _
Value
Sheets("P3_MSTA_Daten_KW").Cells(LastRow, 1).Value = Sheets("P3_Gantt_Daten").Cells( _
i, 10) _
.Value
LastRow = LastRow + 1
End If
Next i
End Sub
Wenn der ursprüngliche Code von Rudi bei dir in der Ziel-Tabelle die Werte ab Zeile 95 einträgt, dann ist die Zelle A94 nicht leer (auch ein Leerstring in einer Zelle hat zur Folge, dass die Zelle nicht leer ist).
Gruß Werner
Gruß Werner

Anzeige
AW: Copy_Paste
31.08.2015 15:15:47
Rudi
Hallo,
es wird die erste freie Zelle von unten genommen. Wenn du immer in Zeile 15 anfangen willst:
LastRow=15 anstatt LastRow = cells(....)
Gruß
Rudi

AW: Copy_Paste
31.08.2015 13:10:34
Werner
Hallo Rudi,
ist dir diese Variable versehentlich reingerutscht, weil benutzt wird sie nicht.
Dim szStr As String
Gruß Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige