Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Kombinationsfeld mit Form AfterUpdate Ereignis füllen

Frage Entwicklung VB for Applications

Mitglied: anten0

anten0 (Level 1) - Jetzt verbinden

31.10.2008, aktualisiert 04.11.2008, 6249 Aufrufe, 1 Kommentar

Musste zuerst ein Kombinationsfeld1 mit Tabellennamen füllen. Nun soll automatisch ein zweites Kombinationsfeld2 mit den Feldnamen der Auswahltabelle aus Kombinationsfeld1 gefüllt werden.

Hallo,

musste zuerst ein Kombinationsfeld1 durch klick auf Button mit Tabellennamen füllen. Nun soll automatisch ein zweites Kombinationsfeld2 mit den Feldnamen der Auswahltabelle aus Kombinationsfeld1 gefüllt werden.

wenn ich unten aufgeführten VBA Code in Access 2000 ausführe bekomme ich eine Endlosschleife als Resultat.
Ich würde gerne wissen was oder wie ich dem Compiler sage das er die Tabellenauswahl aus Kombinationsfeld1 zur Feldnamenausgabe in Kombinationsfeld2 nutzen soll.



01.
Private Sub Befehl7_Click() 
02.
Dim RS As Recordset 
03.
Dim DB As Database 
04.
Dim fld As Field 
05.
Dim merkstring As String 
06.
 
07.
If IsNull(Me.Kombinationsfeld10) Then 
08.
 MsgBox "Bitte im Kombinationsfeld Tabellen eine Auswahl treffen!" 
09.
 Exit Sub 
10.
End If 
11.
 
12.
Set DB = Application.CurrentDb 
13.
Set RS = DB.OpenRecordset("SELECT * FROM " & Me.Kombinationsfeld10 & " " & Me.Text5) 
14.
 
15.
Do 
16.
  
17.
 For Each fld In RS.Fields 
18.
   
19.
  If merkstring <> "" Then 
20.
 
21.
   merkstring = merkstring & ";" & fld 
22.
 
23.
  Else 
24.
 
25.
   merkstring = fld 
26.
    
27.
  End If 
28.
 
29.
 Next fld 
30.
 
31.
RS.MoveNext 
32.
 
33.
MsgBox merkstring 
34.
 
35.
merkstring = "" 
36.
 
37.
Loop Until RS.EOF = True 
38.
 
39.
RS.Close 
40.
Set RS = Nothing 
41.
Set DB = Nothing 
42.
 
43.
End Sub 
44.
 
45.
---------------------------------------------------------------------------------------------------------------------------------------------- 
46.
 
47.
Private Sub Kombinationsfeld10_AfterUpdate() 
48.
 
49.
Dim RS As Recordset 
50.
Dim DB As Database 
51.
 
52.
If IsNull(Me.Kombinationsfeld10) Then 
53.
 MsgBox "Bitte im Kombinationsfeld Tabellen eine Auswahl treffen!" 
54.
 Exit Sub 
55.
End If 
56.
 
57.
Set DB = Application.CurrentDb 
58.
Set RS = DB.OpenRecordset("SELECT * FROM " & Me.Kombinationsfeld12) 
59.
 
60.
 
61.
End Sub

Wie muss ich verfahren oder welcher Eintrag im Private Sub Kombinationsfeld10_AfterUpdate()???

Grüße
an10zero
Mitglied: anten0
04.11.2008 um 11:29 Uhr
Also hier mal meine Lösung vorerst zu dem Ganzen!

Falss Jemand den code zum ausprobieren übertragen möchte, vorher darauf achten das die Tabelle mit Feldspalte, Feldzeile und Feld sowie das Formular vorhanden sind.

01.
Option Compare Database 
02.
Option Explicit 
03.
          
04.
                                                                         
05.
Private Sub Befehl7_Click() 
06.
Dim RS As Recordset 
07.
Dim DB As Database 
08.
Dim fld As Field 
09.
Dim rsSQL, rsSQLConst1, rsSQLConst2, rsSQLConst3 As String 
10.
Dim merkstring As String 
11.
 
12.
If IsNull(Me.Kombinationsfeld10) Then 
13.
  
14.
   MsgBox "Bitte Auswahl im Kombinationsfeld treffen!" 
15.
   Exit Sub 
16.
  
17.
End If 
18.
 
19.
rsSQL = "SELECT * FROM " & Me.Kombinationsfeld10 
20.
rsSQLConst1 = "SELECT * FROM " & Me.Kombinationsfeld10 
21.
rsSQLConst2 = rsSQLConst1 & " WHERE " & Me.Kombinationsfeld12 
22.
rsSQLConst3 = rsSQLConst2 & "=" & Me.Text5 
23.
 
24.
If Not IsNull(Me.Kombinationsfeld12) Then 
25.
 
26.
 rsSQL = rsSQLConst2 
27.
   
28.
End If 
29.
  
30.
If Not IsNull(Me.Text5) Then 
31.
  
32.
 rsSQL = rsSQLConst3 
33.
 
34.
End If 
35.
 
36.
Set DB = Application.CurrentDb 
37.
Set RS = DB.OpenRecordset(rsSQL) 
38.
 
39.
Do 
40.
  
41.
 For Each fld In RS.Fields 
42.
   
43.
  If merkstring <> "" Then 
44.
 
45.
   merkstring = merkstring & ";" & fld 
46.
 
47.
  Else 
48.
 
49.
   merkstring = fld 
50.
    
51.
  End If 
52.
 
53.
 Next fld 
54.
 
55.
RS.MoveNext 
56.
 
57.
MsgBox merkstring 
58.
 
59.
merkstring = "" 
60.
 
61.
Loop Until RS.EOF = True 
62.
 
63.
RS.Close 
64.
Set RS = Nothing 
65.
Set DB = Nothing 
66.
 
67.
End Sub 
68.
 
69.
Private Sub Kombinationsfeld10_AfterUpdate() 
70.
 
71.
 
72.
 
73.
Dim RS As Recordset 
74.
Dim DB As Database 
75.
Dim fld As Field 
76.
Dim fldNamenMerken As String 
77.
 
78.
Me.Kombinationsfeld12 = Nothing 
79.
If IsNull(Me.Kombinationsfeld10) Then 
80.
 MsgBox "Bitte Auswahl im Kombinationsfeld treffen!" 
81.
 Exit Sub 
82.
End If 
83.
 
84.
fldNamenMerken = "" 
85.
 
86.
Set DB = Application.CurrentDb 
87.
Set RS = DB.OpenRecordset("SELECT * FROM " & Me.Kombinationsfeld10) 
88.
 
89.
Do 
90.
  
91.
 For Each fld In RS.Fields 
92.
  
93.
  If fldNamenMerken <> "" Then 
94.
   
95.
   fldNamenMerken = fldNamenMerken + fld.Name & ";" 
96.
   
97.
  Else 
98.
 
99.
   fldNamenMerken = fld.Name 
100.
    
101.
  End If 
102.
 
103.
Next fld 
104.
 
105.
Me.Kombinationsfeld12.RowSource = fldNamenMerken 
106.
  
107.
 
108.
RS.MoveNext 
109.
   
110.
fldNamenMerken = "" 
111.
  
112.
Loop Until RS.EOF = True 
113.
 
114.
 
115.
If IsNull(Me.Kombinationsfeld12) Then 
116.
 MsgBox "Bitte im Kombinationsfeld Feldauswahl eine Auswahl treffen!" 
117.
 Exit Sub 
118.
End If 
119.
 
120.
RS.Close 
121.
Set RS = Nothing 
122.
Set DB = Nothing 
123.
 
124.
End Sub 
125.
 
126.
 
127.
 
128.
 
129.
Private Sub Form_Open(Cancel As Integer) 
130.
 
131.
Dim DB As Database 
132.
Dim td As TableDef 
133.
Dim fld As String 
134.
 
135.
Dim kfNamenMerken, fldNamenMerken As String 
136.
 
137.
 'Übergeben der Datenbank 
138.
Set DB = CurrentDb 
139.
'für jede Variable Tabellendaten in der Datenbank Tabellendefinition 
140.
For Each td In DB.TableDefs 
141.
 'Tabellennamen merken und den nächsten darunter setzen 
142.
 kfNamenMerken = kfNamenMerken + td.Name & ";" 
143.
Next td 
144.
 'übergeben der Tabellennamen in kombinationsfeld 
145.
 Me.Kombinationsfeld10.RowSource = kfNamenMerken 
146.
  
147.
 
148.
End Sub 
149.
 
Für Anregungen, Kommentare sowie Besserungen freue ich mich!

Grüße
an 10 zero
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Windows Server
Windows 2016 - Ereignis 513 CAPI2

Frage von Looser27 zum Thema Windows Server ...

Visual Studio
gelöst (VB) Form-Elemente nicht wie im Entwurf angeordnet (2)

Frage von MrCount zum Thema Visual Studio ...

Batch & Shell
gelöst Set-ADUser - Füllen des Felds "Location" funktioniert nicht (2)

Frage von Alex94G zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (15)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...