Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

Definierte Abfrage für VBA

Frage Entwicklung VB for Applications

Mitglied: VBSnoobDlu

VBSnoobDlu (Level 1) - Jetzt verbinden

17.07.2008, aktualisiert 15:52 Uhr, 5464 Aufrufe, 5 Kommentare

HI,
Ich habe mal ne echt dumme Frage aber komme einfach nicht darauf.

Ich habe eine Datenbank die einige dinge tut (Sind für die Frage nicht wichtig ;) )
so nun habe ich eine Abfrage geschrieben und gespeichert (abf_ColB)
wie kann ich in VBA nun mit dem Ergebnis dieser Abfrage arbeiten?
Das Ergebnis sind einige Zeilen also muss in einem Object gespeichert werden nur wie führe ich die Abfrage in VBA aus??

habe bis dato immer folgendes gemacht:


Sub bla()
DIM SQLCB as String
DIM Rec as Object

SQLCB = "Select * from tbl_bla;"

Set Rec = CurrentDb.OpenRecordset(SQLCB)



So würde ich es so auch weitermachen, doch der SQL-Tag ist zu lang und hat zuviele Variablen die ich in VBS nicht mehr getrennt bekommen ;)

bsp:
SELECT tbl_Pressplan.F_Nummer AS [F-Nr], tbl_Pressplan.Kunde, tbl_Pressplan.Modell, tbl_Pressplan.Folie, tbl_Pressplan.Menge, [Hübe] & "/" & summ([Startdatum],[Startzeit],[Maschine]) AS Hub, [Startdatum] & " " & [Startzeit] AS Start, IIf([Gespritzt] Is Null,"","x") AS SP, tbl_Pressplan.Text AS Zusatz, tbl_produktion.Text AS Auftragstext FROM tbl_Pressplan LEFT JOIN tbl_produktion ON tbl_Pressplan.F_Nummer_Auswahl = tbl_produktion.z10_faufnr WHERE (((tbl_Pressplan.Maschine)="Col. B") AND ((tbl_Pressplan.Erledigt) Is Null)) ORDER BY tbl_Pressplan.Startdatum, tbl_Pressplan.Startzeit;


Also wie kann ich eine definierte Access-Abfrage (abf_ColB) in VBA ausführen und das Ergebnis bearbeiten?


Danke schon mal für die Hilfe

Daniel
Mitglied: Logan000
17.07.2008 um 11:19 Uhr
Moin

..., doch der SQL-Tag ist zu lang und ...
Zu lang für was?

...hat zuviele Variablen die ich in VBS nicht mehr getrennt bekommen ;)
Welche Variablen und warum wist du diese trennen?

Vielleicht hilft Dir das weiter:
01.
DIM SQLCB as String 
02.
DIM Rec as Object 
03.
SQLCB = "SELECT tbl_Pressplan.F_Nummer AS [F-Nr], tbl_Pressplan.Kunde, " 
04.
SQLCB = SQLCB & "tbl_Pressplan.Modell, tbl_Pressplan.Folie, tbl_Pressplan.Menge, " 
05.
SQLCB = SQLCB & "[Hübe] & "/" & summ([Startdatum],[Startzeit],[Maschine]) AS Hub, " 
06.
SQLCB = SQLCB & "[Startdatum] & " " & [Startzeit] AS Start, IIf([Gespritzt] Is Null,"","x") AS SP, "  
07.
SQLCB = SQLCB & "tbl_Pressplan.Text AS Zusatz, tbl_produktion.Text AS Auftragstext " 
08.
SQLCB = SQLCB & "FROM tbl_Pressplan LEFT JOIN tbl_produktion ON " 
09.
SQLCB = SQLCB & "tbl_Pressplan.F_Nummer_Auswahl = tbl_produktion.z10_faufnr " 
10.
SQLCB = SQLCB & "WHERE (((tbl_Pressplan.Maschine)="Col. B") AND " 
11.
SQLCB = SQLCB & "((tbl_Pressplan.Erledigt) Is Null)) " 
12.
SQLCB = SQLCB & "ORDER BY tbl_Pressplan.Startdatum, tbl_Pressplan.Startzeit;" 
13.
 
14.
Set Rec = CurrentDb.OpenRecordset(SQLCB)
Gruß L.
Bitte warten ..
Mitglied: VBSnoobDlu
17.07.2008 um 11:33 Uhr
Hi und Danke,
daher das ich den Tag ja in VBA verwenden würde müsste ich Ihn umbasteln, da ja jedes " bedeutet Befehl beendet.

habe schon raus wie ich weiter machen muss ist ja doch relative leicht ;)

stAbfName = "abf_ColB"
Set Rec = CurrentDb.OpenRecordset(stAbfName)


jetzt muss ich nur noch zusehen wie ich die einzelnen Antwortzeilen aus dem Rec Object bekomme.

aber wo ein Wille ist, ist auch ein weg

Danke für dein Post aber finde Ihn zu lang ... der SQL-Tag ist nun mal bissel länger und
das Problem ist eigentlich ja nur das wenn da mal jemand anderes reinschaut erst den kompletten Tag zusammen Sätzen muss um Ihn zu verstehen.


Wie heißt es so schön

quick and dirty

aber wenn du einen Anreiz hast wegen der sache mit dem Rec object bin ich ganz Ohr


Gruß
Bitte warten ..
Mitglied: Logan000
17.07.2008 um 12:09 Uhr
aber wenn du einen Anreiz hast wegen der sache mit dem Rec object bin ich ganz Ohr
Du arbeitest in VBA unter...
Access? Welche Version?

Hast du einen Verweis gesetzt auf Microsoft ActiveX Data Objects?

Probiers mal mit
<code>
...
DIM Rec as ADODB.Recordset
...
</code

Jetzt solten dir eigenlich alle Eigenschaften und Methoden angeboten werden sobald zu Rec. tippst.
Den Rest soltest Du in der Hilfe finden.

Gruß L.
Bitte warten ..
Mitglied: VBSnoobDlu
17.07.2008 um 12:31 Uhr
es ist Access 2002

habe das mal getestet was du geschrieben hast:
DIM Rec as ADODB.Recordset

das Problem ist das ich Rec ja als Object deklariert habe,
nun bekomme ich die Fehlermeldung doppel deklaration.

Wenn ich die Object deklaration entferne bekomme ich eine Typenunverträglichkeit bei ausführen

Rec = currentDB.OpenRecordSet(SQL)

aber werde da mal ansetzen sollte machbar sein,

Ich bedanke mich für deine Hilfe.
Bitte warten ..
Mitglied: Logan000
17.07.2008 um 15:52 Uhr
Sorry da habe ich geschlafen.

So in etwa soltes du mit den Ergebnissen arbeiten können:
01.
Dim rec As Recordset 
02.
Dim tAbfName As String 
03.
 
04.
tAbfName = "abf_ColB" 
05.
Set rec = CurrentDb.OpenRecordset(tAbfName ) 
06.
rec.MoveFirst 
07.
While Not rec.EOF 
08.
    Debug.Print rec.Fields(0).Value   ' Inhalt 1. Feld 
09.
    Debug.Print rec.Fields(1).Value   ' Inhalt 2. Feld usw. 
10.
    rec.MoveNext 
11.
Wend
Gruß L.
Bitte warten ..
Ähnliche Inhalte
VB for Applications
SNMP Abfrage in EXCEL über VBA (7)

Frage von SebastianL zum Thema VB for Applications ...

Windows Userverwaltung
gelöst RDP definierte Benutzer auf definierten Servern über GPO (11)

Frage von mc-doubleyou zum Thema Windows Userverwaltung ...

VB for Applications
gelöst VBA Code Änderung Access 2010 (6)

Frage von Dr.Cornwallis zum Thema VB for Applications ...

VB for Applications
gelöst Mit VBA Zertifikate auslesen (3)

Frage von it4baer zum Thema VB for Applications ...

Neue Wissensbeiträge
Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(13)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

RedHat, CentOS, Fedora

Fedora 27 ist verfügbar

Information von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
Server
Bilder aus dem Web mit CSV runterladen (30)

Frage von Yannosch zum Thema Server ...

LAN, WAN, Wireless
Gebäudeverkabelung 10Gigabit LWL (27)

Frage von raffzwo zum Thema LAN, WAN, Wireless ...

Festplatten, SSD, Raid
IBM System X: HDD formatieren? (13)

Frage von Badger zum Thema Festplatten, SSD, Raid ...