Problem mit Exel und VB?

Hallo,

Also ich habe wieder ein Problem mit VB.

Ich habe eine exel datei auf meinem PC und möchte jetzt gerne, dass der inhalt von spalte X zeile Y in VB angezeigt wird.

Bspl:

Spalte 5 Zeile 3: 14542

dann soll in VB angezeigt werden:

Die gesuchte Zahl ist: 14542
geht das?

Danke!
 
Mit der GetObject() - Funktion kannst Du auf eine Exceldatei zugreifen...


Code:
Dim myXLS As Object
Set myXLS = GetObject("c:\testxls.xls")
Label1.Caption = myXLS.Sheets(1).Cells(1, 1)
 
Hallo,

Ich habe das mal versucht und habe bemerkt das es noch nicht ganz das ist was ich möchte.

Jetzt kommt das nächste Problem:

Ich habe in Spalte A viele werte und in B dazu noch welche :

Code:
A             B
ABC2          40
ABC3          20
ABC4          30

so jetzt möchte ich gerne, wenn ich eingebe: 3 dann soll nach ABC3 gesucht werden und wenns gefunden wurde dann halt Spalte B dazu auszugeben.

Geht das auch?
Könntest du mir das noch erklären?

Wäre echt nett.
Ich bedanke mich für deine Hilfe!
 
zum beispiel so:

Code:
Dim myXLS As Object
Set myXLS = GetObject("c:\testxls.xls")

wf = 21 'PROBLEM: ist der Zellwert z.B. "abc210" wird auch "21" gefunden, man muss also besser in wert zunächst den nicht-numerischen Anteil löschen und dann direkt die zahlen vergleichen!
For Each wert In myXLS.Sheets(1).Range("daten") ' "Daten" ist der bereich, in dem sich die Bezeichnungen befinden
    If InStr(wert, wf) Then
    Label1.Caption = (myXLS.Sheets(1).Cells(wert.Row, 2).Value)
    Exit For
    End If
Next wert

gruß
thekorn
 
Danke für die antwort.

Könntest du mir

Code:
For Each wert In myXLS.Sheets(2).Range("test")

nochmal erklären?

Ich habe (2) eingetragen weil bei zeile 2 der erste text steht und bei Range() "test" da in zeile 2 test steht.

so habe ich das verstanden aber das geht nicht.

könntest du mir das bitte erklären?

danke dir!
 
kann mir da wirklich keiner mehr helfen?

wäre echt sehr nett wenn es mir einer erklären möchte.

Nochmal genau das problem:

Code:
A          B
test    | 50
test2  | 70

wenn ich jetzt z.B. eingebe:

test dann soll das gesucht werden.
aus der gefundenen Zeile soll dann aus spalte B die rückgabe statt finden.

geht das denn irgentwie, kann mir da einer helfen?

Danke
 
Erklärung(-sversuch!?)

tschuldigung, dass ich nicht 24h am Tag online bin, helfe dir jetzt aber gerne.
zunächst aber mal ein kleiner Tipp für dich, wenn du mal wieder nicht länger warten kannst:
Schau doch einfach in der ONLINE-Hilfe nach, also Wort markieren und "F1" drüchen, die entsprechende Hilfe erscheint.

Dann wirst du unter anderem folgendes herrausfinden:
-> Mit "sheets(1)" wird das erste Tabellenblatt in einer Exceldatei bezeichnet, mit "sheets(2)" das zweite usw. Alternativ ist aber auch "sheets("Daten")" möglich, du kannst also in die Klammer sowohl die Blattnummer als auch die Blattbezeichnung eintragen.
-> Mit "Range()" wird allg. ein bestimmter Bereich innerhalb einer Tabelle bezeichnet. So kann man zum Beispiel mit "Range("A1") auf die Zelle "A1" zugreifen. Es gibt in Excel die Möglichkeit Bereichsnamen zu vergeben. Davon habe ich im Beispielcode gebrauch gemacht. Ich habe dem Bereich in dem die Bezeichner stehen, also z.B. "abc1", "abc2" usw., den Namen "daten" gegeben [Bereich markieren-> Einfügen -> Name -> Definieren ->(Name: "Daten")-> Hinzufügen]. Mit "Range("Daten")" wird also der Bereich "Daten" ausgelesen.
-> Die For..Each-Schleife geht jede Zelle in diesem Bereich durch.

Hoffe, das ich dir helfen konnte,
gruß
thekorn
 

Neue Beiträge

Zurück