Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Funktion Werteübergabe

Betrifft: Funktion Werteübergabe von: Christian
Geschrieben am: 30.01.2020 19:47:03

Hallo Leute,


bin Anfänger und habe da mal eine Frage.


Warum bekomme ich den Wert aus der Funktion nicht in meine Variablen


Sub Daten_Übergabe()


'Die Variablen definieren



Dim longY As Long 'Letztes Feld das Daten hat Y richtung


Dim longX As Long 'Letztes Feld das Daten hat X richtung


Dim ranPaletten As Range


'Übergabe der ersten Zelle für die Palettendaten

Set ranPaletten = Range("B20")


'Aufruf der Funktion für den Y Wert zur letzten vollen Zelle

longY = Letzte_Zeile_Spalte(ranPaletten.Row, ranPaletten.Column)


MsgBox longY



End Sub


Public Function Letzte_Zeile_Spalte(lngY As Long, lngX As Long) As Long

Do While Cells(lngY, lngX).Value <> ""

lngY = lngY + 1
Loop

Letzte_Spalte = lngY - 1

MsgBox "Erste leere Zelle : " & Letzte_Spalte

End Function

Betrifft: AW: Funktion Werteübergabe
von: Luschi
Geschrieben am: 30.01.2020 20:30:13

Hallo Christian,

die Vba-Funktion heißt 'Letzte_Zeile_Spalte', also muß die Ergebniszuweisung
Letzte_Zeile_Spalte = lngY - 1
und nicht
Letzte_Spalte = lngY - 1
heißen.

Gruß von Luschi
aus klein-Paris

OPS: würdest Du mit Optiion Explicit arbeiten, hätte der Debugger die falsche Zuweisung angemeckert!

Betrifft: AW: Funktion Werteübergabe
von: Christian
Geschrieben am: 31.01.2020 06:15:34

Danke für den Tipp.

Hat natürlich geklappt

Betrifft: AW: Funktion Werteübergabe
von: GerdL
Geschrieben am: 30.01.2020 21:01:20

Hallo Christian,

....und, wenn das linke Argument in Cells erhöht wird, wird die Zeile verändert, nicht die Spalte.

Gruß Gerd

Beiträge aus dem Excel-Forum zum Thema "Funktion Werteübergabe"