MS-Office-Forum
Google
   

Zurück   MS-Office-Forum > Archive > Microsoft Access - Archiv > Microsoft Access - Archiv (2002)
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads Der Renner, 11 Entwicklertools für Access, Tipps & Trick und offene Datenbanken zum einzigartigen Preis.
Themen-Optionen Ansicht
Alt 17.04.2002, 15:41   #1
-mud-
MOF User
MOF User
Traurig KombiBox via Code/Ado/Recordset füllen

Hallo.
Folgendes Problem:
Ich möchte eine Kombibox via Code füllen. Das hört sich leichter an, als es für mich ist.
das hier schlug fehl:

Do Until rstMasch.EOF = True
Arttext = Arttext + CStr(rstMasch!Artikelnummer) + ";" + rstMasch!bezeichnung + ";"
rstMasch.MoveNext
Loop


Kom_Artikelnummer.ColumnCount = 2
Kom_Artikelnummer.ColumnWidths = "1 cm;6 cm"
Kom_Artikelnummer.AutoExpand = True
Kom_Artikelnummer.ListWidth = 4600
Kom_Artikelnummer.RowSourceType = "Value List"
'Kom_Artikelnummer.RowSource = Arttext

weil dann der string arttext zu lang wird, umd als rowsource durchzugehen.
ich weiß, wie es mit einer eingebundenen oder verknüpften tabelle gehen würde, möchte das aber vermeiden sondern nur via code auf die andere datenbank (bzw. ado) zugreifen.

ich hoffe, ich konnte mich verständlich machen
[blablabla]

gruß & dank
-mud
-mud- ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.04.2002, 22:02   #2
WalterS
MOF Koryphäe
MOF Koryphäe
Standard

Hi!
mir fällt nur folgender UMWEG ein

1. beim Laden des Formulars eine Tabelle anlegen
2. die mit den Daten füllen und als Rowsource zuweisen
3. beim Entladen des Formulars die Tabelle löschen/leeren

__________________

CU WAlter
PS: Rechtsschreibfehler und Typfehler sind mein geistiges Eigentum und dürfen ohne meine Zustimmung nicht weitergegeben werden.

Sportliche Wiener schauen auf meiner Homepage www.oesta.info vorbei oder kommen gleich zum Langsamlauftreff (Infos unter meiner eMail-Adresse); kulturell Interessierte schauen bei http://theater.grg21.ac.at/vorbei.

PS: Ein Sommerhighlight in Wien
WalterS ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.04.2002, 22:05   #3
-mud-
Threadstarter Threadstarter
MOF User
MOF User
Standard

@walter: danke für den tip, das würde ich als akzeptable notlösung in betracht ziehen. ich mag nur noch nicht ganz glauben, das es nicht möglich ist, ein kombifeld auf einem recordset basieren zu lassen...
-mud- ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 18.04.2002, 14:21   #4
-mud-
Threadstarter Threadstarter
MOF User
MOF User
Standard

ICH HABS!!! [Idee] [mehr lachen]

so gings:
rstmasch ist ein new recordset,
die zeile
kombibox.recordsourcetype = "artikelaufl2"
wird beim laden aufegerufen, dann:

Code:

  Function ArtikelAufl2(Feld As Control, ID As Variant, Zeile As Variant, Spalte As Variant, Code As Variant) As Variant
 
Static AnzDat() As String, Eintraege As Integer
    
  Select Case Code
        
    Case acLBInitialize            ' Initialisieren.

            If rstMasch.State = adStateOpen Then rstMasch.Close
            
            clve.Fnc_TabAufFF "Artikelstamm", rstMasch
            ' Füllt ein Recordset rstMasch mit der Tabelle Artikelstamm (Forward-Cursor)
         
            Do Until rstMasch.EOF = True 
              
              ReDim Preserve AnzDat(1, Eintraege)  
              AnzDat(0, Eintraege) = rstMasch!Artikelnummer
              AnzDat(1, Eintraege) = rstMasch!Bezeichnung
              Eintraege = Eintraege + 1
              rstMasch.MoveNext
            Loop
            
            rstMasch.Close
            
            ArtikelAufl2 = True
    
    Case acLBOpen                    ' Öffnen.
            ArtikelAufl2 = Timer        ' Eindeutige ID.
    
    Case acLBGetRowCount                ' Zeilen lesen.
            ArtikelAufl2 = Eintraege
    
    Case acLBGetColumnCount    ' Spalten lesen.
            ArtikelAufl2 = 2
    
    Case acLBGetColumnWidth        ' Spaltenbreite abrufen.
            'ArtikelAufl2 = -1        ' Standardbreite verwenden.
            ArtikelAufl2 = 800        ' Breite in Twips
            
    Case acLBGetValue                ' Die Daten lesen.
           ArtikelAufl2 = AnzDat(Spalte, Zeile)
               
    End Select

End Function
mir lief schon das blut aus dem ohr vor lauter grübeln [entsetzt]
nu hab ichs! [Finger hoch] (und bin auch etwas stolz, war mit meinen rudimentären kenntnissen harte arbeit)


ps: hilfreich war dieser
MSDN-Tip
-mud- ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:42 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

Copyright ©2000-2010 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günther Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.
Beachten Sie bitte auch unsere Nutzungsbedingungen.