public oder global

24/10/2008 - 15:31 von Philippe Malmedé | Report spam
hallo an alle,

habe folgendes problem:

möchte in einer optionsgruppe eine variable einen wert zuweisen.

das geht

aber ich möchte dann diese variable in einer unteren rotine wiederverwenden

das krieg ich nicht hin

sicher kein großes problem aber für einen anfànger schon

ich hàng ein listing an



Option Compare Database
Option Explicit

Public Type tauswahl_feld
auswahl_feld As Long
End Type
-

Private Sub Option27_GotFocus()
Dim typauswahl_feld As tauswahl_feld
With typauswahl_feld
.auswahl_feld = 1 ' Artikel_nummer
End With
typausgeben typauswahl_feld
End Sub

Private Sub Option29_GotFocus()
Dim typauswahl_feld As tauswahl_feld
With typauswahl_feld
.auswahl_feld = 2 ' Artikel_name
End With
typausgeben typauswahl_feld

End Sub

Private Sub suchen_Click()
Dim sqlbefehl As String
Dim textsuch As Variant
Dim db As Database
Dim queTemp As QueryDef

textsuch = InputBox("Text Eingeben") ' eingabe des wertes zahl oder text
textsuch = textsuch + "*" ' anhàngen einer flexiblen suche

' typausgeben typauswahl_feld
Set db = CurrentDb
' select befehl mit einer Variablen die artikelnummern abruft mit sortierung
abwàrtz
sqlbefehl = "select artikel_nummer, artikel_name, artikel_name2, artikel_vk
" & _
"from tbl_s_artikel " & _
"where artikel_nummer like '" & textsuch & "' " & _
"order by artikel_nummer ;"

' öffnet eine temporàre Datei mit den suchergebnissen
Set queTemp = db.CreateQueryDef("", sqlbefehl)
' führt die abfrageergebnisse in eine Datei namens me.recordset
Set Me.Recordset = queTemp.OpenRecordset(dbOpenSnapshot)

End Sub


Ziel ist es nachher in nummern oder namen zu suchen wenn man entsprechendes
anklickt

güße

Philippe
 

Lesen sie die antworten

#1 Mark Doerbandt
24/10/2008 - 15:40 | Warnen spam
Hallo, Philippe,

Philippe Malmedé:

Public Type tauswahl_feld
auswahl_feld As Long
End Type



das ist keine Variable, sondern ein Typ.

Private Sub Option27_GotFocus()
Dim typauswahl_feld As tauswahl_feld



Hier deklarierst Du eine /lokale/ Variable.

With typauswahl_feld
.auswahl_feld = 1 ' Artikel_nummer
End With
typausgeben typauswahl_feld
End Sub

Private Sub Option29_GotFocus()
Dim typauswahl_feld As tauswahl_feld



Hier wieder.

With typauswahl_feld
.auswahl_feld = 2 ' Artikel_name
End With
typausgeben typauswahl_feld

End Sub

Private Sub suchen_Click()
Dim sqlbefehl As String
Dim textsuch As Variant
Dim db As Database
Dim queTemp As QueryDef

textsuch = InputBox("Text Eingeben") ' eingabe des wertes zahl oder text
textsuch = textsuch + "*" ' anhàngen einer flexiblen suche

' typausgeben typauswahl_feld
Set db = CurrentDb
' select befehl mit einer Variablen die artikelnummern abruft mit sortierung
abwàrtz
sqlbefehl = "select artikel_nummer, artikel_name, artikel_name2, artikel_vk
" & _
"from tbl_s_artikel " & _
"where artikel_nummer like '" & textsuch & "' " & _
"order by artikel_nummer ;"

' öffnet eine temporàre Datei mit den suchergebnissen
Set queTemp = db.CreateQueryDef("", sqlbefehl)
' führt die abfrageergebnisse in eine Datei namens me.recordset
Set Me.Recordset = queTemp.OpenRecordset(dbOpenSnapshot)

End Sub



Wenn Du unbedingt den Weg ueber eine Variable gehen magst, dann
einfach

Dim auswahl_feld As Long

Normalerweise loest man das aber so, dass man die Optionsfelder in
einer Optionsgruppe anordnet und dann deren Wert direkt ausliest -
dann braucht man gar keine Variable.

Gruss - Mark

Informationen fuer Neulinge in den Access-Newsgroups unter
http://www.doerbandt.de/Access/Newbie.htm

Bitte keine eMails auf Newsgroup-Beitràge senden.

Ähnliche fragen