hallo ihr lieben,
ich habe eine Beispiel-Mappe gemacht.
Mein Versuch den VBCode dort in das gewünschte zu bringen ist mal wieder gescheidert.
Hätte vielleicht jemand die Tage mal Zeit sich das anzusehen und eventuell
da mal "klar schiff" zu machen?
Vorab danke für jede Rückmeldung und eure Zeit
Gruß
Angelina
Hallo Angelina,
was hat die Zelle L1 mit der Spalte K zu tun?
(03.02.2015, 19:28)Steffl schrieb: [ -> ]Hallo Angelina,
was hat die Zelle L1 mit der Spalte K zu tun?
Der Eintrag in Zelle L1 besagt wieviel Zeilen aus der Datenbank im Range A:J angezeigt werden
Spalte K ist der erste Eintrag in der Spalte A
Gruß
Angelina
hallo an @,
kleiner Nachtrag - habe einen kleinen Fehler gemacht.
Derzeit ist die Datenbank auf dem Tabellenblatt "Start" Bereich CO:CV
ich habe jedoch vergessen, das ich ein zweites Tabellenblatt "Daten" angelegt habe
dort sind nun die Daten in dem Bereich A:H
sorry - für diesen Nachtrag
Gruß
Angelina
Hallo Angelina,
deinen Nachtrag gerade noch gelesen und Code (hoffentlich richtig) geändert.
Code:
Sub prcListe()
Dim rngWert As Range
Dim lngC As Long
lngC = 1
With Worksheets("Start")
.Range("A:J").ClearContents
Do Until IsEmpty(.Cells(lngC, 11).Value) Or .Range("L1").Value < lngC
Set rngWert = Worksheets("Daten").Columns(1).Find(.Cells(lngC, 11).Value, LookIn:=xlValues, lookat:=xlWhole)
If Not rngWert Is Nothing Then
rngWert.Copy .Cells(lngC, 1)
rngWert.Offset(, 1).Resize(, 7).Copy .Cells(lngC, 4)
lngC = lngC + 1
End If
Loop
End With
End Sub
hallo Stefan,
hm .... das ist ja nicht das was ich in der Mappe beschrieben habe.
Bei deinem VBCode werden ja nur die Daten zu der Spalte K angezeigt.
Habe ich das so schlecht erklärt?
Sorry - aber das stimmt leider nicht
Trotzdem vielen lieben Dank für deine Zeit und Mühe
Gruß
Angelina
Hallo Angelina,
dann habe ich das nicht verstanden. Verstehe es trotz mehrmaligen Lesen immer noch nicht, wie es dann lauten soll.
(03.02.2015, 20:33)Steffl schrieb: [ -> ]Hallo Angelina,
dann habe ich das nicht verstanden. Verstehe es trotz mehrmaligen Lesen immer noch nicht, wie es dann lauten soll.
hallo,
habe die Datei nochmals angehängt.
Ist es jetzt klar?
Gruß
Angelina
Hallo Angelina,
Ich verstehe es leider immer noch nicht. Du hast in der Spalte K folgende Werte stehen. 1000, 800, 600, 400, 399.
In der Spalte A aber hast Du nur den Wert 1000 stehen und 999, 998, 997 usw. Heißt das Du willst den Wert aus K1 und alle Werte aus den Bereich K1-Wert aus der Zelle L1? Und wie verhält es sich bei Werten von 400 und 399?
Hallo Angelina,
du lässt leider nach mit Deinen Erklärungen. Mit Bacon allein kommt man nicht weiter, hast Du ja gesehen.
teste mal:
Code:
Option Explicit
Private Sub CommandButton1_Click()
Call Liste
End Sub
Sub Liste()
'=============================================================================
' Auswahl Zeile aus Datenbank
'=============================================================================
Dim lngZ As Long
Dim i As Long, j As Long
Dim R
Dim Takt As Long
Takt = Range("L1")
Columns("A:J").ClearContents
lngZ = Cells(1, 11).End(xlDown).Row
For i = 1 To lngZ
If Cells(i, 11) < Takt Then
MsgBox "Auswahlzeile muß mindestens " & Takt & " sein !", vbOKOnly, "Hinweis"
Exit Sub
End If
With Sheets("Daten")
R = Application.Match(Cells(i, 11), .Columns("A"), 0)
If IsNumeric(R) Then
For j = 1 To Takt
Cells(j, 1).Value = .Cells(R, 1).Value
Range(Cells(j, 4), Cells(j, 10)).Value = .Range(.Cells(R, 2), .Cells(R, 9)).Value
R = R - 1
Range("L2") = "'" & j & " / " & Takt
Next j
End If
End With
Next
End Sub