Anzeige
Archiv - Navigation
504to508
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
504to508
504to508
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Tabellenbereich in Array einlesen

Tabellenbereich in Array einlesen
27.10.2004 13:57:40
Bex
Hallo erstmal,
ich hab folgendes Problem:
Ich möchte für Excel eine Funktion schreiben, bei der man in dem aufpoppenden Funktionsargumente-Fenster einen Datenbereich angeben kann,welcher dann in einen Array einlesen wird, um später mit diesen werten zu rechnen.
Habe es bislang nur durch explizite Angabe der Zellen im Quellcode geschafft.
Der Berech soll jedoch nicht vorher festgelegt sein, sondern durch den Anwender frei bestimmbar.
Über Ratschläge und Tips würde ich mich freuen.
Gruß Bex

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

Betreff
Datum
Anwender
Anzeige
AW: Tabellenbereich in Array einlesen
Ramses
Hallo
das "aufpopende" Fenster kann ich dir nicht liefern, aber eine Möglichkeit zur Übergabe des Bereiches

Function mySum(Bereich As Range) As Double
MsgBox Application.WorksheetFunction.Sum(Bereich)
End Function

wird aufgerufen in der Zelle mit
=mySum(A1:B10)
Gruss Rainer
AW: Tabellenbereich in Array einlesen
Bex
Das Fenster kommt doch von alleine, wenn ich die Funktion später in der Tabelle aufrufe.
Bei deinem Code bekomm ich ein Popup mit einem Wert. ich will jedoch einen Wertebereich einlesen, um später mit einzelnen Werten aus diesem Bereich zu rechnen.
Anzeige
Entschuldigung
Ramses
Hallo
Ich bitte höflichst um Entschuldigung dass ich deine Frage zur Übergabe eines Zellbereiches an eine Funktion beantwortet habe :-(
Wenn jemand von Daten Einlesen in ein Array spricht, gehe ich davon aus, dass er die Grundbegriffe von VBA hinter sich hat.
Wie bereits im meinem Beitrag geschrieben, sollte dies nur als Beispiel dienen, wie ein Zell-Bereich an eine Funktion übergeben wird.
Ich dachte den Rest hättest du verstanden.
Sorry nochmals für die inadäquate Beantwortung deiner Frage-
Gruss Rainer
AW: Entschuldigung
Bex
Ich bin mir nich ganz sicher, ob nich ein wenig Ironie im letzten Beitrag enthalten ist. Natürlich bin ich über jeden Beitrag dankbar, habe mich wahrscheinlich nur etwas unglücklich ausgedrückt.
Ich beschäftige mich noch nicht lange mit VB, versuche nur Analogien zu anderen Sprchen zu finden und habe wohl dem falschen Programmteil zu viel Aufmerksamkeit gewidmet.
Range stellt den Datenbereich da, wenn ich mich nich irre
wie kann ich jedoch auf die Eingelesenen Daten zugreifen um nur einzelne zur Berechnung zu nutzen?
Bei einem Array würd ich mir das so vorstellen "a(1,2)" zum Beispiel
Natürlich bin ich für deinen Post dankbar und hoffe meine nachfrage wurde nicht falsch aufgefasst.

Anzeige
AW: Entschuldigung
Ramses
Hallo
hier mal ein kurzes Beispiel wie ein Bereich an ein Array übergeben wird:

Function give_Range(rngStr As String)
Dim rngStr As String
Dim myR As Range
Set myR = Range(rngStr)
Arr_Check myR.Rows.Count, myR.Columns.Count
End Function


Sub Arr_Check(a As Integer, b As Integer)
Dim myArr() As Variant
'Hier wird das Array dimensioniert
ReDim myArr(a, b)
End Sub

Aufgerufen wird das ganze in der Tabelle mit
=Give_Range(A1:B12)
Ich muss jetzt leider weg.
Bei Bedarf melde ich mich heute Abend, ober bei euch, morgen früh nochmals
Gruss Rainer
Anzeige
AW: Tabellenbereich in Array einlesen
Udo
Das macht der Funktionsassisistent schon, wenn die Function definiert ist.
Udo
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen