Anzeige
Archiv - Navigation
1040to1044
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
Namen in Array einlesen und an Fkt. übergeben
19.01.2009 13:06:00
adrian
Hi,
bin mir hierbei nicht ganz sicher ob das so klappt.
Möchte mit dier Funktion ("SearchOEM"), die ein Namen ("OEMName") zurückgibt, falls in einem Bereich ("ODMArea") ein Suchname ("ODMName") vorkommt.
Die Namen die diese Fkt. zurückgibt möchte ich in einem Array Speichern und an eine Funktion Übergeben die ListBoxen ("AddListBox") erstellt und Diese Namen in die Liste einträgt:
Soweit bin ich bisher:
Funktion "Search OEM":

Private Function SearchOEM(ODMArea As Range, ODMName As String, OEMName As String) As String
Dim Zelle As Range
For Each Zelle In ODMArea
If Zelle.Value = ODMName Then
SearchOEM = OEMName
End If
Next
End Function


AddLB Funktion:
Sub AddListBox(Stelle As Range, OEMName As Variant)
With ActiveSheet
Set Objekt = .OLEObjects.Add(ClassType:="Forms.ListBox.1", Left:=Stelle.Left, _
Top:=Stelle.Top, Width:=Stelle.Width, Height:=Stelle.Height)
Set LB = Objekt.Object
With LB
.Name = "ODMList" & ActiveSheet.OLEObjects.Count
.Width = 120
.Height = 50
.TextAlign = fmTextAlignCenter
.BorderStyle = fmBorderStyleSingle
.ListStyle = fmListStylePlain
.Font = "Georgia"
.Font.Bold = True
.Font.Size = 16
.IntegralHeight = False
.SpecialEffect = fmSpecialEffectFlat
.MultiSelect = fmMultiSelectSingle
End With
End With
End Sub


hier weiß auch nicht recht den Befehl, damit das Array in die Liste eingelesen wird.
Aufruf im Sheet:
weiß hier nicht recht weiter, wie ich das Array mit den Namen fülle =/
OEMNamen = SearchOEM(Worksheets("Overview").Range("PhilipsODM"), ODMName, "Philips")
Call SearchOEM(Worksheets("Overview").Range("SonyODM"), ODMName, "Sony")
Call SearchOEM(Worksheets("Overview").Range("SamsungODM"), ODMName, "Samsung")
Call SearchOEM(Worksheets("Overview").Range("LGElecODM"), ODMName, "LG Elec.")
AddListBox Cell.Offset(5, 0), OEMNamen
Wäre super, wenn jmd mir sagen kann wie es funzt!
lg
adrian

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

Betreff
Datum
Anwender
Anzeige
AW: Namen in Array einlesen und an Fkt. übergeben
19.01.2009 13:38:00
adrian
Hi,
habe es soweit, nur wollen die Namen noch nicht so recht ins Array rein =/ (fett hervorgehoben)
DeleteTextBox
DeleteListBox
For Each Cell In Range("ODMListB")
ReDim OEMNamen(0 To 3)
ODMSum = 0
If Cell.Value "" Then
ODMName = Cell.Value
ODMSum = SearchODMValue(Worksheets("Overview").Range("PhilipsODM"), ODMName)
ODMSum = ODMSum + SearchODMValue(Worksheets("Overview").Range("SonyODM"), ODMName)
ODMSum = ODMSum + SearchODMValue(Worksheets("Overview").Range("SamsungODM"), ODMName)
ODMSum = ODMSum + SearchODMValue(Worksheets("Overview").Range("LGElecODM"), ODMName)
AddTextbox Cell.Offset(2, 0), ODMSum
OEMNamen(0) = SearchOEM(Worksheets("Overview").Range("PhilipsODM"), ODMName, "Philips")
OEMNamen(1) = SearchOEM(Worksheets("Overview").Range("SonyODM"), ODMName, "Sony")
OEMNamen(2) = SearchOEM(Worksheets("Overview").Range("SamsungODM"), ODMName, "Samsung")
OEMNamen(3) = SearchOEM(Worksheets("Overview").Range("LGElecODM"), ODMName, "LG Elec.")

MsgBox OEMNamen
AddListBox Cell.Offset(8, 0), OEMNamen
End If
Next
lg
adrian
Anzeige
AW: Namen in Array einlesen und an Fkt. übergeben
19.01.2009 16:28:00
adrian
Müsste stimmen,
lediglich die Ausgabe muss:
For i = 0 to 3
msgbox ODMNamen(i)
next
lauten.
AW: Namen in Array einlesen und an Fkt. übergeben
24.01.2009 21:42:00
Gerd
Hallo Adrian,
Strings zu 0 addieren und in der Schleife der Funktion kein Exit For bei "gefunden" ?
Gruß Gerd

228 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige