Anzeige
Archiv - Navigation
1536to1540
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

vba - in linker spalte nächsten wert zurückgeben

vba - in linker spalte nächsten wert zurückgeben
02.02.2017 10:26:45
Michael
hallo!
ich habe folgendes problem:
ich habe in spalte N werte, allerdings mit sehr vielen leerzellen dazwischen. ich würde nun gerne in spalte O ein autofill machen, welcher nach unten sucht und den nächsten wert so lange zurückgibt, bis sich der wert ändert.
das sollte dann ca. so ausschauen:
anbei die datei, wie das ca. ausschauen sollte.
https://www.herber.de/bbs/user/111083.xlsx
besten dank im voraus für eure hilfe!
mike

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vba - in linker spalte nächsten wert zurückgeben
02.02.2017 14:28:14
ChrisL
Hi Michael
Sub t()
With Range("O1:O" & Cells(Rows.Count, 14).End(xlUp).Row)
.Formula = "=IF(N1,N1,O2)"
.Value = .Value
End With
End Sub

cu
Chris
AW: vba - in linker spalte nächsten wert zurückgeben
02.02.2017 14:41:24
Michael
hallo chris,
funktioniert super, danke dir!!
schönen tag!
mike
Hier eine Lösung
02.02.2017 14:39:54
Max2
Hallo,
folgendes wäre mein Vorschlag:

Option Explicit
Sub werte_eintragen()
Dim ws As Worksheet
Dim rng, c As Range
Dim lzeile As Long
Dim wert As Integer
Dim i As Long
Set ws = ThisWorkbook.Sheets(1) 'Anpassen
With ws
lzeile = .Cells(.Rows.Count, 2).End(xlUp).Row
i = lzeile
Do Until i  "" Then
wert = .Cells(i, 2).Value
End If
.Cells(i, 3).Value = wert
i = i - 1
Loop
End With
End Sub

Hier noch die Datei: https://www.herber.de/bbs/user/111096.xlsm
Anzeige
AW: Hier eine Lösung
02.02.2017 20:55:31
Michael
hallo max,
das funktioniert super, auch mit formeln, was ich brauche. ich bin nur zu blöd, das auf die spalten N:O anzupassen. könntest du mir da noch schnell helfen?
danke!!
mike
AW: Hier eine Lösung
03.02.2017 09:24:40
Michael
hallo max,
danke für die antwort.
jetzt bekomme ich eine overflow-meldung...
ne idee? mache ich was falsch?
AW: Hier eine Lösung
03.02.2017 10:39:13
Max2
Bei mir funktioniert das einwandfrei...
Egal wie viele Zahlen ich in Spalte N stehen habe.
Code ist?!:

Option Explicit
Sub werte_eintragen()
Dim ws As Worksheet
Dim rng, c As Range
Dim lzeile As Long
Dim wert As Integer
Dim i As Long
Set ws = ThisWorkbook.Sheets(1)
With ws
lzeile = .Cells(.Rows.Count, 14).End(xlUp).Row
i = lzeile
Do Until i  "" Then
wert = .Cells(i, 14).Value
End If
.Cells(i, 15).Value = wert
i = i - 1
Loop
End With
End Sub

Anzeige
AW: Hier eine Lösung
03.02.2017 11:06:22
Michael
ja, code stimmt. das ganze bleibt laut debugger bei i = i - 1 hängen und dann kommt irgendwann die overflow meldung.
screenshot:
https://www.herber.de/bbs/user/111133.jpg
AW: Hier eine Lösung
03.02.2017 11:31:31
Max2
Sehr komisch... was sagt er wenn du:
Do Until i 
Durch:
Do Until i = 0
ersetzt?
An sich ist es das gleiche... aber man kann es mal probieren
Probiere auch mal:
i = CLng(i) - 1

AW: Hier eine Lösung
03.02.2017 11:39:12
Michael
ändert sich nichts. kann es damit zusammenhängen, dass ich in spalte N eine formel stehen habe?
=WENN(ISTFEHLER(SVERWEIS(D5;Tabelle2!A:B;2;FALSCH));"";SVERWEIS(D5;Tabelle2!A:B;2;FALSCH))
Anzeige
AW: Hier eine Lösung
03.02.2017 11:52:48
Max2
Nein, eigentlich nicht.
Du kannst es ausprobieren, aber dann sollte der Fehler Ursprung bei:
wert = Zellen Wert und nicht bei i = i -1
i = Letzte Zeile (somit eine Zahl)
Führe Code aus bis i kleiner 1 ist (somit 0)
... Code
i = i - 1 (Also Letzte Zeile - 1.. Ergebnis - 1, -1, -1.... bis die Null eben erreicht ist
Wiederhole

AW: Hier eine Lösung
03.02.2017 12:42:25
Michael
bleibt immer an der selben stelle hängen, funktioniert irgendwie nicht. da muss etwas in meiner tabelle faul sein.
danke trotzdem für deine hilfe und deine bemühungen!!

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige