Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Funktion Range asl Rückgabewert?

Funktion Range asl Rückgabewert?
30.01.2009 08:20:00
Horst
Hey !
Ich habe gelesen das ich nur in einer Funktion eine Wertrückgabe definieren kann?
Ich habe aber nur String, Boolean, Integer usw. als mögliche Rückgabewerte gefunden
kann ich auch einen Weterbereich (Range) oder sogar ein ganzes WorkSheet zurückgeben?
Also wie z.B.
--------------------------------------------------------

Function meineFunktion(meinSheet AS Worksheet) As Range
Dim meinRange As Range
meinRange = meinSheet.Range(A1:A10)
meineFunktion = meinRange
End Function


---------------------------------------------------------------
Gruß
Horst

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Funktion Range asl Rückgabewert?
30.01.2009 08:41:19
Tino
Hallo,
natürlich geht das, hier mal ein Beispiel.
Es wird nach einen Tabellennamen mit dem vorgegebenen Inhalt gesucht und
die Tabelle auch zurückgegeben.
Sub SuchTabellenNamenMitInhalt()
Dim meTab As Worksheet
Dim Gefunden As Boolean

Set meTab = SucheTabelle("2", Gefunden)

If Gefunden = True Then
 MsgBox "Die Tabelle " & meTab.Name & " wurde gefunden"
Else
 MsgBox "Keine Tabelle gefunden"
End If

End Sub

Function SucheTabelle(strText As String, ByRef Gefunden As Boolean) As Worksheet
 Dim i As Integer
 
 For i = 1 To ThisWorkbook.Worksheets.Count
  If Worksheets(i).Name Like "*" & strText & "*" Then
   Gefunden = True
   Set SucheTabelle = Worksheets(i)
   Exit Function
  End If
 Next i

Set SucheTabelle = ActiveSheet
End Function


Gruß Tino

Anzeige
AW: Worksheet bzw. Range als Rückgabewert
30.01.2009 09:11:00
Erich
Hi Horst,
hier noch ein Beispiel - zum Spielen.
Die Mappe sollte mindestens zwei Tabellenblätter haben, in A1:A10 sollten ein paar Zahlen stehen.
meinBereich tut dasselbe wie meineFunktion, ist nur etwas kürzer.
test wird unterschiedliche Ergebnisse bringen - je nachdem, welches das aktive Blatt ist.

Option Explicit
Function meineFunktion(meinSheet As Worksheet) As Range
Dim meinRange As Range
Set meinRange = meinSheet.Range("A1:A10")
meineFunktion = meinRange
End Function
Function meinBereich(meinSheet As Worksheet) As Range
Set meinBereich = meinSheet.Range("A1:A10")
End Function
Function NextBlatt(wksA As Worksheet) As Worksheet
If Worksheets.Count = 1 Then
Set NextBlatt = Nothing
ElseIf wksA.Index 

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Funktion Range asl Rückgabewert?
30.01.2009 09:17:00
Horst
Hey !
habt Dank Ihr beiden.
Gruß
Horst
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige