Live-Forum - Die aktuellen Beiträge
Datum
Titel
26.07.2024 18:10:28
26.07.2024 17:12:34
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
264to268
264to268
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Anzahl der kopierten Zeilen

Anzahl der kopierten Zeilen
05.06.2003 10:34:29
Jörg
Ich habe ein Code mit dem ich 5 Zeilen im Abstand von 5 Zeilen kopiere, nun möchte ich aber 30 Zeilen im Abstand von 5 Zeilen kopieren.
Hier der Code:
With wksAus.Range("D:D")
lngRowDest = .Range("D65536").End(xlUp).Row - 2
End With
If lngRowDest > 1 Then lngRowDest = lngRowDest + 1
Do
If wksSim.Cells(lngRow - 5 * intCounter, varFind.Column).Value = varFind Then
intCopyCount = intCopyCount + 1
wksSim.Range(wksSim.Cells(lngRow - 5 * intCounter, 7), _
wksSim.Cells(lngRow - 5 * intCounter, 7)).Copy _
Destination:=wksAus.Range(wksAus.Cells(lngRowDest + 1 + intCopyCount, 7), _
wksAus.Cells(lngRowDest + 1 + intCopyCount, 7))
End If
intCounter = intCounter + 1
If intCopyCount = 5 Then Exit Do
Loop Until lngRow - 5 * intCounter < 1
Else
Msgbox "Sollwert 3 """ & varKrit & """ wurde nicht gefunden"
End If

Wo muß die Änderung eintragen.

Jörg

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Anzahl der kopierten Zeilen
05.06.2003 21:02:09
Mike E.

Hallo Jörg,

konnte den Code nicht ganz nachvollziehen; hier jedoch ein Ansatz, wie du die Anzah der Zeilen variabel eingeben kannst (mittels Inputbox):

Dieses Beispiel kopiert nur und muss daher deinen Bedürfnissen noch angepasst werden (Destination habe ich jetzt mal weggelassen).

Ich hoffe, das hilft dir etwas?!

Viele Grüße
Mike

Re: Anzahl der kopierten Zeilen
10.06.2003 09:12:09
Jörg

Hi,

hier nochmal das ganze Macro:

Public Sub Auswerten2()
Dim wksAus As Worksheet
Dim wksSim As Worksheet
Dim lngRow As Long, lngRowDest As Long
Dim intCounter As Integer, intCopyCount As Integer
Dim varKrit As Variant, varFind As Variant
Application.ScreenUpdating = False
varKrit = TextBox5.Value
If varKrit = "" Then Exit Sub
Set wksAus = Worksheets("Auswert")
Set wksSim = Worksheets("Simpati-Daten")
With wksSim.Range("D:D")
Set varFind = .Find(What:=varKrit, After:=Range("D1"), _
LookIn:=xlValues, LookAt:=xlWhole, SearchDirection:=xlPrevious, _
MatchCase:=True)
If Not varFind Is Nothing Then
intCounter = 1
lngRow = varFind.Row
With wksAus.Range("D:D")
lngRowDest = .Range("D65536").End(xlUp).Row - 2
End With
If lngRowDest > 1 Then lngRowDest = lngRowDest + 1
Do
If wksSim.Cells(lngRow - 5 * intCounter, varFind.Column).Value = varFind Then
intCopyCount = intCopyCount + 1
wksSim.Range(wksSim.Cells(lngRow - 5 * intCounter, 7), _
wksSim.Cells(lngRow - 5 * intCounter, 7)).Copy _
Destination:=wksAus.Range(wksAus.Cells(lngRowDest + 1 + intCopyCount, 7), _
wksAus.Cells(lngRowDest + 1 + intCopyCount, 7))
End If
intCounter = intCounter + 1
If intCopyCount = 5 Then Exit Do
Loop Until lngRow - 5 * intCounter < 1
Else
Msgbox "Sollwert 3 """ & varKrit & """ wurde nicht gefunden"
End If
End With
Application.ScreenUpdating = True
Call CommandButton2_Click
End Sub

Funktion:
Das Marco soll in der Spalte den letzten WErt "X" finden und von dort 30 Zeilen kopieren.

Ist:
Der wert "X" wird gesucht und dann alle 5 Zeilen der wert kopiert und 5 mal wiederholt.

Evt hilft Dir dies etwas. Ich wollte schon longrow auf 1 und denn
initcounter auf 30 stellen aber ohne erfolg

Anzeige

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige