Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1524to1528
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

Array von Funktion an Sub übergeben

Array von Funktion an Sub übergeben
22.11.2016 10:01:45
Funktion
Hallo zusammen,
ich übergebe der Funktion Kette1 eine Spaltenummer. Daraufhin erzeugt die Funktion ein Array. _ Die fett markierte Zeile mit dem Array sollte allerdings in der

Sub stehen und nicht in der Funktion. Nur weiß ich grad nicht, wie man das Array an die 

Sub übergibt.
Hat jemand Lösungsvorschläge? Vielen Dank.
Grüße Christoph

Sub test()
spalte = 5
Worksheets("20102014").Cells(intaktuelleZeile, 5).Value = Kette1(spalte)
End Sub
Function Kette1(spalte As Integer) As String
Dim lngLastRow As Long, i As Long, n As Long
Dim myArray()
With Sheets("Quelle")
lngLastRow = .Cells(Rows.Count, spalte).End(xlUp).Row
n = 0
For i = 2 To lngLastRow
ReDim Preserve myArray(n)
myArray(n) = .Cells(i, spalte)
n = n + 1
Next i
    Sheets("20102014").Cells(1, 2) = Join(myArray(), vbCrLf)
End With
End Function

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Array von Funktion an Sub übergeben
22.11.2016 11:03:37
Funktion
Hallo,
würde ich so machen:
Sub test()
Dim DasArray, Spalte As Long, lngAktuelleZeile As Long
Spalte = 5
DasArray = Kette1(Spalte)
lngAktuelleZeile = 1
Worksheets(2).Cells(lngAktuelleZeile, 5).Resize(UBound(DasArray)).Value = DasArray
End Sub
Function Kette1(Spalte As Long)
With Sheets("Quelle")
Kette1 = .Range(.Cells(2, Spalte), .Cells(Rows.Count, Spalte).End(xlUp)).Value
End With
End Function

Gruß
Rudi
AW: Array von Funktion an Sub übergeben
22.11.2016 12:57:06
Funktion
Danke schon mal! Gibts noch ne Möglichkeit das Array mit Zeilenumbruch in einer Zelle auszugeben? Wird bei mir in Zelle 3,5 und 4,5 ausgegeben.
Anzeige
AW: Array von Funktion an Sub übergeben
22.11.2016 13:06:29
Funktion
Hallo,

Sub test()
Dim DasArray, Spalte As Long, lngAktuelleZeile As Long
Spalte = 5
lngAktuelleZeile = 1
DasArray = Kette1(Spalte)
Worksheets(1).Cells(lngAktuelleZeile, 5) = Join(Application.Transpose(DasArray), vbLf)
End Sub
Function Kette1(Spalte As Long)
With Sheets("Quelle")
Kette1 = .Range(.Cells(2, Spalte), .Cells(Rows.Count, Spalte).End(xlUp)).Value
End With
End Function
Gruß
Rudi
AW: Array von Funktion an Sub übergeben
22.11.2016 13:10:25
Funktion
Der Wahnsinn. Danke! Das mit dem Transpose hatte ich nicht auf dem Schirm.
AW: Array von Funktion an Sub übergeben
22.11.2016 14:26:41
Funktion
Hallo nochmal,
hab noch ein Problem. Müsste noch eine Abfrage machen, ob das Array mehr als 1 Element enthält, da es sonst eine Fehlermeldung wegen dem Zeilenumbruch gibt, wenn nur ein 1 Element existiert.
UBound funktioniert in dem Fall nicht, oder ich stell mich zu doof an ;)?
Anzeige
AW: Array von Funktion an Sub übergeben
22.11.2016 15:19:57
Funktion
Hallo,
Sub test()
Dim DasArray, Spalte As Long, lngAktuelleZeile As Long
Spalte = 5
lngAktuelleZeile = 1
DasArray = Kette1(Spalte)
If IsArray(DasArray) Then DasArray = _
Join(Application.Transpose(DasArray), vbLf)
Worksheets(1).Cells(lngAktuelleZeile, 5) = DasArray
End Sub

Gruß
Rudi

36 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige