vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Datenbanken
Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 08.12.04 11:50

Hallo
Ich habe ein großes Problem mit Textfeldern.
Ich arbeite mit A97 und VBA,
die Textfelder eines Endlosformulars sollen per ButtonKlick in die Zwischenablage kopiert werden, diese Funktion klappt auch soweit. Nur diese Textfelder nehmen ja mehrere Werte an. Z.B.: Textfeld "Name" nimmt in der ersten Zeile "meier" an und in der nächsten dann "Müller"
die Copy Funktion kopiert allerdings nur die erste Zeile und nicht die anderen Werte die das textfeld aufnimmt.
so. Das Problem sehe ich hier:
Private Sub CopyButton_Click()

Dim Clip As String
Clip = Name.Value & vbTab & nachname.Value & vbTab _
& Hausnummer.Value & vbTab & Straße.Value & vbTab _
& Bemerkung.Value & vbTab
Call ClipBoard_SetData(Clip)

End Sub

ClipBoard_SetData funktioniert. Ich denke eher das ich anstelle von Value vielleicht eine andere Sache brauche, so das er vielleicht ähnlich wie in einer Schleife alle Werte holt.
War das verständlich? Ich arbeite noch an einer Beispiel DB falls die nötig ist, bitte bescheid geben
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 08.12.04 12:56

Hi Annabell,
jede Zeile in deinem Endlosformular repräsentiert doch einen Datensatz. Normalerweise hat dieser Satz ja dann auch einen eindeutigen Key.
Und irgendwie gehören alle diese Datensätze logisch zu einem referenzierenden anderen Satz einer anderen Tabelle. So mach ich das zumindest immer. D.h. du mußt eine Abfrage generieren, welche dir alle Datensätze deines Endlosformulares anzeigt, welche zu dem aktuellen referenzierenden Satz gehören, oder arbeitest du nicht mit einem Unterformular(Verknüpfung zweier Formulare durch Schlüssel- bzw. Fremdschlüssel)
Gruß Armin

P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 08.12.04 13:10

Nein kein Unterformular.
Die Datenherkunftstabelle des Formulars hat zum Beispiel die Attribute Name, Nachname und Straße
diese sollen nun in dem Formular nebeneinander in den Textfeldern TextName, TextNaName, TextStraße ausgegeben werden.
Die Werte in der Tabelle sind zum Beispiel.
Prinz | Eisenherz | Tolle Straße
Erwin | Test | Teststraße
Testname|Testnachname| Teststraße
usw.
Mit meinem Kopieren gibt er aber eben nur "Prinz Eisenherz Tolle Straße" aus
Soll aber alles ausgeben.
Eine Idee?

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 08.12.04 13:31

Hi Annabell,
Also wenn ich das richtig verstehe, stehen in deinem Formular alle Datensätze, welche auch in der zugrundel iegenden Tabelle stehen oder?
in dem Fall ist die einfachste Lösung dann gleich die Tabelle auszulesen.
Gruß Armin

P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 08.12.04 13:36

Nein das war nur um das ganze zu vereinfachen.
Es gibt kriterien nach denen die Daten ausgewählt werden
die in das formular kommen.
Diese Daten sollen nun durch diesen Button in die ZWischenablage kommen so das man sie später in Excel zu weiteren auswertungszwecken einfügen kann.
Das sollte man mit berichten machen, ich weiß. Aber leider muss ich gehorchen;)
es gibt nunmal leute die unbedingt diese textfelder kopierbar haben wollen
Hast du denn den Aufbau so verstanden wie ich das meinte.
Also das ist textbox, textbox2 und textbox3 die ich kopieren muss denn die nehmen
jeweils mehrere Werte an.

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 08.12.04 13:41

Oh, sehe grade deine Antworten auf meinen Beitrag "anfängerfehler"
Hab ich gar nicht bemerkt, Danke!
Hatte sich nun aber schon erledigt, habe die Datenherkunft nicht im VBA Code angepasst, wo allerdings die selects eingebettet waren ;)
Danke aber trotzdem, dein tipp hats ja richtig getroffen

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 08.12.04 13:48

aaaaaaaaaah, da ist er ja wieder der schöne Satz zum Schluß, hatte ihn schon vermisst.
Dann würde ich eine Abfrage generieren
(falls diese nicht schon existiert, welche die Auswahlkriterien beinhaltet, und dann diese Abfrage auslesen.
Gruß Armin
P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 08.12.04 13:56

Es geht aber darum die Daten in den Zwischenspeicher zu bekommen, und zwar per Button im Formular, frag mich nicht wer sich das ausgedacht hat ;)
Könnte man ja auch schick mit einem Bericht lösen, aber egal.
Habe nun einen Lösungsansatz in einem anderen Forum gefunden allerdings komme ich damit nicht zurecht, bekomme nach anpassung einen fehler in der * Zeile.
Sind natürlich nur Beispielwerte ;)

Private Sub CopyButton_Click()
Dim Clip As String
Dim rs As DAO.Recordset

Set rs = Me.RecordsetClone

While Not rs.EOF
Clip = rs!Name & vbTab & rs!nachname & vbTab
* Clip = Clip & rs!Hausnummer & vbTab & rs!Straße & vbTab *
Clip = Clip & rs!Bemerkung & vbCrLf
rs.MoveNext
Wend

Call ClipBoard_SetData(Clip)
End Sub

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 08.12.04 13:59

Hab jetzt mal schnell so'n Endlosformular entworfen.
sehe als einzige Möglichkeit wirklich nur die Datensatzherkunft des Formulares auszulesen.
Gruß Armin

P.S.: always look on the bright side of Life
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 08.12.04 14:09

Menno! ich kann das nicht, hab das mit VBA nich drauf
Also einfach bei Button Click die Recordsource würde ja nicht wirklich die gewollten textboxen ausgeben. `
oder wie meinst du das mit dem auslesen, wie würde ich denn dann alle Daten bekommen, gäbe es da dann nicht das gleiche Problem, ich mach mich schonmal zum auslesen schlau ;) danke bis hierhin!

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 08.12.04 14:28

Hi Annabell,
Ich habs kurz nachgestellt, also so funzt der Spass, als Verweis mußt du natürlich 'MicrosoftDAO3.6 Object Library setzen
Gruß Armin

P.S.: always look on the bright side of Life!

Dim Clip As String
Dim rs As DAO.Recordset

Set rs = Me.RecordsetClone

While Not rs.EOF
Clip = rs!ID_Feld & vbTab & rs!Feld2 & vbTab
Clip = Clip & rs!Feld3 & vbTab & rs!Feld4 & vbTab
Clip = Clip & rs!Feld5 & vbCrLf
rs.MoveNext
Wend
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 08.12.04 14:42

Also bei mir klappts nicht
Private Sub Befehl83_Click()

Dim Clip As String
Dim rs As DAO.Recordset

Set rs = Me.RecordsetClone

While Not rs.EOF
Clip = rs!Zeitstempel & vbTab & rs!DKompakt & vbTab
Clip = Clip & rs!DBez & vbTab
Clip = Clip & rs!MBez & vbCrLf
rs.MoveNext

Wend

Call ClipBoard_SetData(Clip)

der kopiert einfach gar nichts.
Allerdings liegt zwischen Zeitstempel und DKompakt noch ein anderes textfeld das aber nicht mit rein soll, ist das vielleicht ein Problem ne oder?

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 08.12.04 14:42

Also, in deinem Endlosformular ist als Datenherkunft eine Tabelle oder eine Abfrage angegeben, und wenn da nicht, dann spätestens bei der Feldeigenschaft 'Steuerelementinhalt. Und genau diese Datenherkunft kann man ja auslesen. Mit DAO geht das so:
dim db as database
Set db = CurrentDb
dim rs as recordset
Set rs = db.OpenRecordset("Deine Tabelle oder Abfrage")
rs.MoveFirst
Do While rs.EOF = False
Feld1 = rs!Feldname1
rs.MoveNext
Loop
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 08.12.04 14:52

Also ich habe jetzt das auf den Button gelegt
Private Sub Befehl83_Click()

Dim db As DATABASE
Set db = CurrentDb
Dim rs As Recordset
Dim Feld1 As String
Set rs = db.OpenRecordset("StoerungenLogg")
rs.MoveFirst
Do While rs.EOF = False
Feld1 = rs!Zeitstempel
rs.MoveNext
Loop

um testweise alle Zeitstempel zu bekommen, geht nicht´, habe bestimmt was falsch gemacht

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 08.12.04 15:07

klar, weil er ja in dem Fall den ersten Zeitstempel immer mit dem nächsten überschreibt. Also wirst du die Daten nach jedem gelesenen Satz am besten gleich in eine Excel -File schreiben.Alles nötige hierfür steht hier mit drin:

Verweis auf Microsoft Excel setzen nicht vergessen.
Dim xlAPP As Object

On Error GoTo Fehler ‚ Verweist in Fehlerroutine(wichtig für ‚Get Object’ und ‚open’)


' bereits geöffnetes Excel verwenden
'Set xlAPP = GetObject(, "excel.application")

' neue Excel-Session erstellen
Set xlAPP = CreateObject("excel.application")

' Excel sichtbar machen
xlAPP.Visible = True

' Excelrückfragen deaktivieren
xlAPP.DisplayAlerts = False

' Abarbeitung von VBA-Ereignissen in XLS-Dateien verhindern
xlAPP.EnableEvents = False

' öffnet eine bestehende Datei
'xlAPP.Workbooks.Open "C:\Mappe.xls"

' erzeugt eine neue Arbeitmappe(Datei)
xlAPP.Workbooks.Add

' Blatt durch Blattindex aktivieren
xlAPP.ActiveWorkbook.Worksheets(2).Select
' alle Blätter zählen
txtAnzSheets.Text = XLBook.Worksheets.Count
‘Blattname ermitteln
Set XLSheet = XLBook.Worksheets(n)
sheetName = XLSheet.Name
' oder Blatt durch Name aktivieren
xlAPP.ActiveWorkbook.Worksheets("Tabelle2").Select

' in die Zelle (zeile 5, spalte 2) "Text" eintragen
xlAPP.Cells(5, 2) = "Text"

' in die Zelle D8 "Text" eintragen
xlAPP.Range("D8") = "Text in Zelle D8"

'Formel in eine Excel – Zelle eintragen
Worksheets(sheetindex).Range(R1).Formula = Formel

' in die Zelle A?(Variable:ZZ) "Text" eintragen
R1 = "A" & Int(ZZ)
XLSheet.Range(R1).Value = "Name"

' speichert die aktuelle Arbeitsmappe
xlAPP.ActiveWorkbook.Save

' speichert die aktuelle Arbeitsmappe unter einen neuen Namen
xlAPP.ActiveWorkbook.SaveAs "C:\Mappe.xls"

' schließt die aktuelle Arbeitsmappe und verwirft
' nicht gespeicherte Änderungen
xlAPP.ActiveWorkbook.Close False

' Excel beenden
xlAPP.Quit

' Speicher freigeben
Set xlAPP = Nothing

XLSheet.Cells.WrapText = False ' Zeilenumbruch ausschalten
R1 = "A1:B" & Int(ZZ)
XLSheet.Range(R1).Select
XLSheet.Range(R1).Columns.AutoFit 'Formatiert selektierte Spalten in optimale 'Breite

Fehler:
Select Case Err.Number
Case 429 ' Excel lief nicht - Excel starten
Set XLApp = CreateObject("Excel.Application")
If XLApp Is Nothing Then
' Fehler: Excel nicht vorhanden!
MsgBox msgNoExcel, vbExclamation
Exit Sub
Else
Set XLApp = CreateObject("Excel.application")
Resume Next
End If
Case 1004
'Datei nicht vorhanden Neue Datei erstellen
Set XLBook = XLApp.Workbooks.Add
Dateivorhanden = False
Resume Next

Case Else
MsgBox Err.Description
Screen.MousePointer = 1
End Select
End Sub
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 09.12.04 12:48

So habe es nun geschafft.
Und zwar so:
Private Sub Befehl83_Click()

''Lösungsansatz 5
Dim strSQL As String
Dim rs As DAO.Recordset
Dim i As Integer
Dim strEx As String
strSQL = "SELECT * FROM Logg"
Set rs = DBEngine(0)(0).OpenRecordset(strSQL, dbOpenDynaset)
While Not rs.EOF
For i = 0 To rs.Fields.Count - 1
strEx = strEx & rs.Fields(i) & vbTab
Next i
strEx = strEx & vbCrLf
rs.MoveNext
Wend

ClipBoard_SetData strEx
rs.Close
Set rs = Nothing


Leider kopiert der mir so einfach die normale Tabelle die die Datenherkunft des formulars ist Der soll aber natürlich nur die kopieren die das Formular auch zeigt.
Da gibts aber ein Problem: Wenn ich anstattt * FROM, text1, text2 ... FRom nehme
dann sagt er " 2 Parameter erwartet und zu wenig bekommen" was soll das denn bedeuten?
Zudem gibt es das Problem das ein Textfeld nicht einfach text3 oder so heißt sonder
auf einer berechnung/ auswahl basiert also =[name] & WENN .....
kann man das auch miteinbeziehen?
Tut mir leid das ich so viel deiner Zeit in Anspruch nehme aber du bist
der einzige der hier antwortet

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 09.12.04 13:51

Hi Anabell, Also um meine Zeit mußt du dir schon mal gar keine Gedanken machen. Das ist das einzige von dem ich hier wirklich mehr als genug habe. Und als stellvertretender Betriebsrat in unserm Laden helfe ich natürlich einer Volkswagenmitarbeiterin welche ja um ihren Job fürchten muß(Hartz sei Dank) sehr gerne.
So und nun zu deinem Prob mit den Daten. Ich dachte nämlich schon, dass in einem Endlosformular alle Datensätze gezeigt werden, welche auch in der Tabelle der Datenherkunft stehen.
auf einer berechnung/ auswahl basiert also =[name] & WENN .....
Auch dieses Feld muß irgendeinen Namen haben. Wo wird denn diese auswahl bzw. Berechnung vorgenommen? Mann könnte ja dann eine eigene SQL-Abfrage generieren, die all die Kriterien enthält, welche auch auf die Daten auf deinem Formular angewendet werden. Die Syntax iss zwar nich gerade ganz einfach, aber da helf ich dir schon bei, damit dass dann hinhaut.
Da gibts aber ein Problem: Wenn ich anstattt * FROM, text1, text2 ... FRom nehme
dann sagt er " 2 Parameter erwartet und zu wenig bekommen" was soll das denn bedeuten?
Hier könnt ich mir jetzt vorstellen, dass die Datenherkunft auf einer Abfrage beruht in der Kriterien angegeben sind. Feld1 Feld2 from Tabelle where Feld1 = "irgendwas" und Feld2 = "irgendwas". Und wenn nun dieses irgendwas der Abfrage im Moment des Aufrufens nicht zur verfügung steht, dann meckert die Abfrage die fehlenden Parameter an.
So ne Ferndiagnose ist halt auch echt immer blöd, wenn man das Ding nicht vor sich hat. Aber bis jetzt bist du ja schon ein ganz gutes Stück weiter gekommen. Und zusammen werden wir das Kind schon schaukeln. Ich für meinen Teil helf dir gern, denn hier such ich nun schon seit 3 Jahren nach der Arbeit, und so langsam gehn mir hier die Ideen aus. Naja, ab 10.01.05 hab ich endlich wieder ein komkretes Projekt für einen Kunden zu proggen, da gehts dann wieder aufwärts.
Ach ja, bis nächste Woche Donnerstag müssten wir dein Prob gelöst haben, da ich dann im Urlaub bin und hinterher beim Kunden, und somit nicht mal mehr ich dir hier antworten kann.
Grüße Armin

P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 09.12.04 14:11

Auch dieses Feld muß irgendeinen Namen haben. Wo wird denn diese auswahl bzw. Berechnung vorgenommen?

= Ja hat es , es heißt StoerBez2 und das =name und so weiter steht unter SteuerelementInhalt.

Ja also der Button der dieses Formular öffnet, hat ein Button_Click Ereignis, die WHERE Klausel dort filtert lediglich nach einigen ID- Nummern, die zu Komponenten gehören die dort ausgewertet werden sollen. Also er zeigt dann in unserem ProblemFormular die jenigen Komponenten wo die ID zum Beispiel zw 3 und 7 liegt.
Weiter kann ich da nichts großartiges erkennen, aber wie gesagt ich bin nicht wirklich gut.
Was ich nicht verstehe ist, warum das so kompliziert ist. Ich meine an dem Punkt wo ich den Button "kopieren" klicke, der ja die Sachen in den ZwSp holen soll, stehen alle daten doch schon fertig berechnet in den Textfeldern, dann muss es doch möglich sein einfach zu sagen, nimm die textfelder 1,2,3 und kopiere deren inhalte bis keine inhalte mehr bereit stehen, also das endlosformular am ende ist
Ich hab eigentlich ab Montag urlaub aber da ich eh nich wegflieg oder ähnliches werde ich wohl auch noch nächste woche herkommen, sonst kann ich nicht ruhig schlafen ;)

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 09.12.04 15:08

Tja das Problem in dem Fall ist, dass das Endlosformular nur ein ansprechbares Feld hat, welches aber so oft erscheint, wie die Tabelle Sätze hat. Ich hab auch schon geschaut ob es vielleicht einen Index bei den Feld-Eigenschaften gibt über den man das jeweilige angezerigte Datenfeld ansprechen könnte, aber den gibts leider nicht.
Also bleibt in dem Fall wohl wirklich nur die Möglichkeit einen Recordset zu erzeugen, in dem genau die Daten stehen, welche auch im Formular angezeigt werden. Kuck doch mal, ob du das Coding des Button_Click Ereignises hier posten kannst, vielleicht kommen wir ja damit weiter. Und ich will nie wieder lesen, dass du behauptest, dass du nicht gut wärest. denn wer will sich anmaßen dass zu behaupten. wer oder was ist schon gut. In unserem IT - Bereich versucht doch jeder sein bestes, aber man(und auch frau) kann schlieslich nicht alles wissen. und wenn du noch anfängerin mit Access bist, da dauert es schon ne Weile bis man das raus hat, fiel mir anfangs auch nicht gerade leicht. Ich hab vorher 3 Jahre lang SAP gemacht, und das ist schon ne ganz andere Art der Programmierung. Also lass jetzt nur nicht den Kopf hängen oder dich entmutigen weil das nun nicht auf anhieb so Super funzt. Irgendwann klappts schon, weils schlieslich für alles ne Lösung gibt, und das vor allem in Access.

Gruß armin

P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 08:10

Habe nun die Button programmierung an prian0815@yahoo.de geschickt.
Das hätte sonst den Beitrag hier unschön gemacht, sins 2 einhalb dinA4 seiten wenn ich mich jetzt nicht täusche. Aber alle anderen die diesen Thread verfolgen bekommen hier natürlich auch die Lösung gepostet, wenns denn mal eine gibt :-Þ
Danke für das Mutmachen Armin!
MfG

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 08:53

Vielleicht hast du das an der Button Programmierung schon gesehen das das Feld Bezeichnung erst bei Button Klick mit einem Join in das Formular kommt und gar nicht in der Sicht/abfrage StoerungenLogg vorhanden ist.
Stellt das nicht nun auch ein großes Problem dar? Weißt du was ich meine?

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 10.12.04 09:14

Hi Annabell,
hab dein Mail bekommen, und gleich am Beginn des Lesens eine Idee gehabt, welche möglicherweise das Problem löst.
Aber nein, so einfach isses nun auch nicht.
Wir probieren jetzt was anderes.
und zwar in deinem Button_click_Ereigniss sollte es eigentlich möglich sein dem local definiertem Recordset die recordsource-Eigenschaft des Formulares zuzuweisen. und zwar so:
sqlState ist glaub ich schon als string definiert, wenn nicht dann tun.
sql = Forms!StoerungenKomponenten.RecordSource
Set rs= db.OpenRecordset(sqlState)
Und jetzt müßten dann eigentlich im Recordset 'RS' all die Sätze stehen, welche auch im Formular angezeigt werden. OProbiers einfach mal aus, aber ich glaube mit dem Lösungsansatz könntest du es recht einfach schaffen.
Gruß Armin

P.S.,: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 09:32

Also ich glaube du meinst das so oder?Also in der zweiten Zeile SqlState.
Dim SqlState As String
SqlState = Forms!StoerungenKomponenten.RecordSource
Set rs = db.OpenRecordset(SqlState)

Und das soll dann in den KopierenButton oder in den FormOpenButton???
Man könnte das doch eigentlich gleich in den KopierenButton machen, scheint mir auch sehr sinnvoll wie du das erklärt hast, nun muss ich ja nur den Recordset an die ClipBoard Fumktion übergeben die ich ja schon in einem Modul gespeichert habe, oder? Ich werd das mal probieren aber du siehst ja, bin mir noch nicht sehr sicher ob das so hinhaut

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 09:36

hab das so in den copybutton

Private Sub Befehl83_Click()

Dim SqlState As String
Dim rs As DAO.Recordset
Dim db As DATABASE
SqlState = Forms!StoerungenKomponenten.RecordSource
Set rs = db.OpenRecordset(SqlState)

Call ClipBoard_SetData(rs)

geht nicht :,(

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 10.12.04 10:06

du mußt die db noch zuweisen:

Dim SqlState As String
Dim rs As DAO.Recordset
Dim db As DATABASE
set db = currentdb
SqlState = Forms!StoerungenKomponenten.RecordSource
Set rs = db.OpenRecordset(SqlState)
und hier dann vielleicht? wieder den rs in einer Schleife auslesen, wie gestern besprochen
Call ClipBoard_SetData(rs)
müßte so eigentlich funzen, aber wie gesagt, dass ist nur so ne Idee von mir. Ich bin ja auch kein Profi. hab aber festgestellt, dass man mit rumprobieren in Acess recht weit kommt.
Gruß Armin

P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 10:34

So, habe nun etwas rumgewerkelt und 2 mögliche Lösungsansätze herausgestellt.
Sieht an sich ganz gut aus, hapert bestimmt nur noch an kleinigkeiten, bei denen du mir allerdings helfen musst

1.
Private Sub Befehl83_Click()
Dim SqlState As String
Dim rs As DAO.Recordset
Dim db As DATABASE
Dim i As Integer

Set db = CurrentDb
SqlState = Forms!StoerungenKomponenten.RecordSource
Set rs = db.OpenRecordset(SqlState)
While Not rs.EOF
For i = 0 To rs.Fields.Count - 1
SqlState = SqlState & Nz(rs.Fields(i), "Kein Eintrag") & vbTab
SqlState = SqlState & rs.Fields(i) & vbTab
Next i
SqlState = SqlState & vbCrLf
rs.MoveNext
Wend
Call ClipBoard_SetData(SqlState)

2.
Private Sub Befehl83_Click()
Dim SqlState, Clip As String
Dim rs As DAO.Recordset
Dim db As DATABASE

Set db = CurrentDb
SqlState = Forms!StoerungenKomponenten.RecordSource
Set rs = db.OpenRecordset(SqlState)
While Not rs.EOF
Clip = rs!Zeitstempel & vbTab & rs!DauerKompakt & vbTab
Clip = Clip & rs!DefektBez & vbTab
Clip = Clip & rs!MassnameBez & vbCrLf
rs.MoveNext
Wend
Call Clipboard_SetDate (Clip)

Ergebnis der Ausgabe
1. = Die ganze Tabelle StoerungenLogg also leider nicht die gewünschten Felder.
2.= "10.12.04 10:00 01.01.00 00:25 Nicht gelesen Erneuter Leseversuch" Warum er das ausgibt versteh ich nicht Das datum stimmt zwar mit dem heutigen überein aber steht nicht in der tabelle und es ist 10:32 und nicht 10:00?
außerdem sind das ja auch nicht die Werte die ich haben will, aber du weißt bestimmt was ich falsch gemacht habe :-D

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 10.12.04 11:14

Hi Annabell,
also erst mal freu ich mich riesig, dass das mit der Recordsetzuweisung schon mal funzt, wie gesagt war ja nur so ne Idee.
also in rs!Zeitstempel müßte jetzt eigentlich genau der Wert stehen, welcher auch im Formular angezeigt wird, außer da gibts irgendwo noch eine Ereignissprozedur, wo irgendwas an der Datums- bzw. Zeitausgabe verändert wird. Und da fällt mir gerade noch ein, dass ja zumindest in einem Feld noch eine Where - Bedingung stand. Diese müßte man dann beim Auslesen des RS noch über eine If Abfrage einbauen. So nach dem Muster ungefähr:
While Not rs.EOF
Clip = rs!Zeitstempel & vbTab & rs!DauerKompakt & vbTab
if rs!DefektBez = 'Die Where Bedingung aus dem Feld' then
Clip = Clip & rs!DefektBez & vbTab
else
Clip = Clip & "Kein Eintrag oder so"& vbTab
endif
Clip = Clip & rs!MassnameBez & vbCrLf
rs.MoveNext

ob der Zeitstempel noch irgendwo geändert wird findest du am besten mit der Suchfunktion im VB - Editor heraus.
Also ich denke so langsam haut das dann schon hin oder?
Gruß Armin
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 11:18

Danke!
Habe gerade gesehen, das bei meinem zweiten Versuch die Daten doch nicht von irgendwoher stammen sondern, das ist der letzte Datensatz in dem Formular.
Warum er nur den anzeigt weiß ich allerdings nicht
das ist noch mal der Code:

Private Sub Befehl83_Click()
Dim SqlState, Clip As String
Dim rs As DAO.Recordset
Dim db As DATABASE

Set db = CurrentDb
SqlState = Forms!StoerungenKomponenten.RecordSource
Set rs = db.OpenRecordset(SqlState)

While Not rs.EOF
Clip = rs!Zeitstempel & vbTab & rs!DauerKompakt & vbTab
Clip = Clip & rs!DefektBez & vbTab
Clip = Clip & rs!MassnameBez & vbCrLf
rs.MoveNext
Wend

Call ClipBoard_SetData(Clip)
End Sub

An die Where Klausel mach ich mich jetzt mal ran.

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 11:27

Die WHERE müssen wir doch aber eigentlich nicht beachten oder denke ich schon wieder falsch, er hat doch schon die fertig ausgewählten datensätze drin und das kopieren in zwischenSP klappt ja auch, zumindest mit einer zeile.
Oder meinst du damit das Feld mit dem =Wenn und so weiter? das habe ich nämlich noch nicht mit in der Auswahl weil ich da ja eben nicht weiß wie ich das reinbekomm.
Das ding heiß Stoerbez2 und hat folgendes als Steuerelementeinhalt:
=[QU] & Wenn([NKomponente] Ist Null;Wenn([EbeneStufe]>=3;[KomBez3]) & Wenn([EbeneStufe]>=4;" -- " & [KomBez4]) & Wenn([EbeneStufe]>=5;" -- " & [KomBez5]) & Wenn([EbeneStufe]>=6;" -- " & [KomBez6]) & Wenn([EbeneStufe]>=7;" -- " & [KomBez7]);Wenn([EbeneStufe]=3;[NKomponente];Wenn([EbeneStufe]>=4;[KomBez3]) & Wenn([EbeneStufe]>=5;" -- " & [KomBez4]) & Wenn([EbeneStufe]>=6;" -- " & [KomBez5]) & Wenn([EbeneStufe]>=7;" -- " & [KomBez6]) & " -- " & [NKomponente]))

krass oder? Wie bekomme ich denn das mit darein? Wichtiger aber natürlich warum er nicht alle Datensätze nimmt sondern nur den letzten
Sorry das ich so viel poste, langsam nerv ich wohl schon, aber das problem macht mich noch fertig

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 10.12.04 11:42

Hi Annabell(oder Anna wenn du nix dagegen hast, wobei ich Annabell echt schön find, is nur so lang zum schreiben)
mal eben vergessen auf den ersten Satz zu springen, sorry mein Fehler, hab in der Hektik(denn heute muß ich nebenher auch noch n bischen was fürs Geschäft machen, und wie das eben immer so ist, ist's natürlich GANZ dringend HI HI, iss ja auch schon erledigt!) einfach nicht dran gedacht.

Set rs = db.OpenRecordset(SqlState)
rs.moveFirst
While Not rs.EOF
so jetzt müsstest du dann alle Sätze einlesen.
Grüßle Armin
P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 11:49

Ich heiße aber Annabelle und nicht Annabell, aber Anna ist auf jeden Fall in Ordnung ;)
So damit hast mich wohl wieder überfordert

Private Sub Befehl83_Click()

Dim SqlState, Clip As String
Dim rs As DAO.Recordset
Dim db As DATABASE

Set db = CurrentDb
SqlState = Forms!StoerungenKomponenten.RecordSource
Set rs = db.OpenRecordset(SqlState)

rs.MoveFirst
Do While rs.EOF = False so
'While Not rs.EOF oder so
Clip = rs!Zeitstempel & vbTab & rs!DauerKompakt & vbTab
Clip = Clip & rs!DefektBez & vbTab
Clip = Clip & rs!MassnameBez & vbCrLf
rs.MoveNext
'Wend so
Loop oder so

jedes mal nur der letzte Datensatz.

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 10.12.04 12:01

Oder meinst du damit das Feld mit dem =Wenn und so weiter? ---> genau das meuine ich. Ich gehe momentan davon aus, dass dieses Feld wie alle andern auchj im RS steht, aber durch das wenn usw. noch geändert bzw. nur unter bedingten Bedingungen angezeigt wird. Und mit der If Bedingung kriegst du das dann auch in dein Clip mit rein.

also nerven kannst DU mich hier nich. Ersten´s hab ich die Zeit, zweitens bist du ja recht nett(ich hab da schon ganz andere Postings gesehn), und drittens ist dein Problem wirklich nicht so'n Minifurzscheiß sondern schon ganz schön dicke, wie man an der where - Bedingung ja ganz klar sieht.Und zu guter letzt sehe ich das ganze durchaus so: 'wenn man mir hier nicht soviel geholfen hätte, wäre ich immer noch ne ganz schöne Pfeife in Access - Programmierung. Also ist es nur fair, wenn ich mein hier erworbenes Wissen auch hier wieder weitergebe.
Die where - Besdingung würde ich in einer String - konstanten hinterlegen(oder noch besser: genauso einmal auslesen wie den SQL - String für den RS), damit der Wahnsinn nicht mitten im Coding steht. zudem läss sich das Programm dadurch leichter pflegen. und lass dich jetzt ja nicht von dem Prob fertig machen, das isses nich Wert, soviel Geld kann dir kein Mensch zahlen, unbd der VW - Konzern schon gleich gar nicht. Außerdem biste ja nun schon ganz schön weit gekommen oder?
UM alle Sätze zu lesen, lies meine Antwort ein Posting darüber.
Gruß Armin

P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 12:10

Hast du meine Antwort um 11:49 nicht gelesen?
Das mit allen Datensätzen geht immernoch nicht, habe ich dort beschrieben, hab versucht das so zu machen wie du gesagt hast.
hier nochmal das posting:

Ich heiße aber Annabelle und nicht Annabell, aber Anna ist auf jeden Fall in Ordnung ;)
So damit hast mich wohl wieder überfordert

Private Sub Befehl83_Click()

Dim SqlState, Clip As String
Dim rs As DAO.Recordset
Dim db As DATABASE

Set db = CurrentDb
SqlState = Forms!StoerungenKomponenten.RecordSource
Set rs = db.OpenRecordset(SqlState)

rs.MoveFirst
Do While rs.EOF = False so
'While Not rs.EOF oder so
Clip = rs!Zeitstempel & vbTab & rs!DauerKompakt & vbTab
Clip = Clip & rs!DefektBez & vbTab
Clip = Clip & rs!MassnameBez & vbCrLf
rs.MoveNext
'Wend so
Loop oder so

jedes mal nur der letzte Datensatz.

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 12:15

" Die where - Besdingung würde ich in einer String - konstanten hinterlegen(oder noch besser: genauso einmal auslesen wie den SQL - String für den RS), damit der Wahnsinn nicht mitten im Coding steht. "

Du meinst mir WHERE Bedingung immernoch die Wenn Bedingung? -kommunikationsschwierigkeiten Aber ich verstehe nicht wie ich das auslesen soll, also meinst du ich soll ne variable machen und diese bekommt den recordset von dem textfeld StoerBez2 in dem ja die Wenn klausel drin ist ?
Wenn du das nicht so meinst dann bin ich verwirrt, ich probiers trotzdem schonmal
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 10.12.04 12:50

Hi Anna,
also die loop Version gegfällt mir persönlich besser, das is abernatürlich reine Geschmackssache.
Wenn du den Aufruf:
Call ClipBoard_SetData(Clip)
nach der Schleife hast, dann ist da natürlich immer nur der letzte Satz drin.
Ich weiß ja nicht was die SetData() macht und empfangen kann(z.B. Excel - File, CSV - File oder so? Also entweder den Funktionsaufruf innerhalb der Schleife für jeden Satz einmal, oder nach der Schleife, aber dann müssten alle Sätze in eine Datei geschrieben werden.
Früßle Armin
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 10.12.04 12:56

Hi Annabelle(noch schöner),
Sorry logisch mein ich die Wenn- Bedingung und siehste du bist eben doch nicht schlecht, denn genau so hab ich das gemeint. Eine Variable die die Wenn - Bedingung dieses Feldes einmal ausliest. das hat den Vorteil, dass wenn die Wenn - Bedingung im Formular - Feld einmal geändert wird, muß niemand mehr dein jetziges Coding ändern.
Gruß Armin

P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 13:04

Das ist diese Clipboards Funktion die ich benutze.

Option Compare Database
Option Explicit

Declare Function OpenClipboard Lib "user32" (ByVal hWnd As Long) As Long
Declare Function CloseClipboard Lib "user32" () As Long
Declare Function GetClipboardData Lib "user32" (ByVal wFormat As Long) As Long
Declare Function SetClipboardData Lib "user32" (ByVal wFormat As Long, ByVal hMem As Long) As Long
Declare Function EmptyClipboard Lib "user32" () As Long
Declare Function GlobalAlloc Lib "kernel32" (ByVal wFlags&, ByVal dwBytes As Long) As Long
Declare Function GlobalLock Lib "kernel32" (ByVal hMem As Long) As Long
Declare Function GlobalUnlock Lib "kernel32" (ByVal hMem As Long) As Long
Declare Function GlobalSize Lib "kernel32" (ByVal hMem As Long) As Long
Declare Function lstrcpy Lib "kernel32" (ByVal lpString1 As Any, ByVal lpString2 As Any) As Long
Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal _
bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

Public Const VK_SNAPSHOT = &H2C

Type RECT_Type
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type

Declare Function GetActiveWindow Lib "user32" () As Long
Declare Function GetDesktopWindow Lib "user32" () As Long
Declare Sub GetWindowRect Lib "user32" (ByVal hWnd As Long, lpRect As RECT_Type)
Declare Function GetDC Lib "user32" (ByVal hWnd As Long) As Long
Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As Long) As Long
Declare Function CreateCompatibleBitmap Lib "gdi32" _
(ByVal hdc As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long
Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, _
ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal XSrc As Long, ByVal YSrc As Long, ByVal dwRop As Long) As Long
Declare Function ReleaseDC Lib "user32" (ByVal hWnd As Long, ByVal hdc As Long) As Long
Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long) As Long

Public Const GHND = &H42
Public Const CF_TEXT = 1
Public Const MAXSIZE = 4096
Global Const SRCCOPY = &HCC0020
Global Const CF_BITMAP = 2
Function ClipBoard_GetData()

Dim hClipMemory As Long
Dim lpClipMemory As Long
Dim MyString As String
Dim retval As Long
If OpenClipboard(0&) = 0 Then
MsgBox "Cannot open Clipboard. Another app. may have it open"
Exit Function
End If
hClipMemory = GetClipboardData(CF_TEXT)
If IsNull(hClipMemory) Then
MsgBox "Could not allocate memory"
GoTo OutOfHere
End If
lpClipMemory = GlobalLock(hClipMemory)
If Not IsNull(lpClipMemory) Then
MyString = Space$(MAXSIZE)
retval = lstrcpy(MyString, lpClipMemory)
retval = GlobalUn
Lock (hClipMemory)
MyString = Mid(MyString, 1, InStr(1, MyString, Chr$(0), 0) - 1)
Else
MsgBox "Could not lock memory to copy string from."
End If
OutOfHere:
retval = CloseClipboard()
ClipBoard_GetData = MyString
End Function
Function ClipBoard_SetData(MyString As String)

Dim hGlobalMemory As Long, lpGlobalMemory As Long
Dim hClipMemory As Long, X As Long
hGlobalMemory = GlobalAlloc(GHND, Len(MyString) + 1)
lpGlobalMemory = GlobalLock(hGlobalMemory)
lpGlobalMemory = lstrcpy(lpGlobalMemory, MyString)
If GlobalUnlock(hGlobalMemory) <> 0 Then
MsgBox "Could not unlock memory location. Copy aborted."
GoTo OutOfHere2
End If
If OpenClipboard(0&) = 0 Then
MsgBox "Could not open the Clipboard. Copy aborted."
Exit Function
End If
X = EmptyClipboard()
hClipMemory = SetClipboardData(CF_TEXT, hGlobalMemory)

OutOfHere2:
If CloseClipboard() = 0 Then
MsgBox "Could not close Clipboard."
End If
End Function

Function ScreenDump()

Dim AccessHwnd As Long, DeskHwnd As Long
Dim hdc As Long
Dim hdcMem As Long
Dim Rect As RECT_Type
Dim junk As Long
Dim fwidth As Long, fheight As Long
Dim hBitmap As Long
DoCmd.Hourglass True
DeskHwnd = GetDesktopWindow()
AccessHwnd = GetActiveWindow()
Call GetWindowRect(AccessHwnd, Rect)
fwidth = Rect.Right - Rect.Left
fheight = Rect.Bottom - Rect.Top
hdc = GetDC(DeskHwnd)
hdcMem = CreateCompatibleDC(hdc)
hBitmap = CreateCompatibleBitmap(hdc, fwidth, fheight)
If hBitmap <> 0 Then
junk = SelectObject(hdcMem, hBitmap)
junk = BitBlt(hdcMem, 0, 0, fwidth, fheight, hdc, Rect.Left, Rect.Top, SRCCOPY)
junk = OpenClipboard(DeskHwnd)
junk = EmptyClipboard()
junk = SetClipboardData(CF_BITMAP, hBitmap)
junk = CloseClipboard()
End If
junk = DeleteDC(hdcMem)
junk = ReleaseDC(DeskHwnd, hdc)
DoCmd.Hourglass False
End Function
Function PrtScn(Alles As Boolean)

If Not Alles Then
keybd_event VK_SNAPSHOT, 0, 0, 0
'bScan einfach auf 1:
Else: keybd_event VK_SNAPSHOT, 1, 0, 0
End If
End Function


Function ClipBoard_Clear()
Call OpenClipboard(0&)
Call EmptyClipboard
Call CloseClipboard
End Function

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 13:10

Danke ! ich fühl mich geschmeichelt ;)
Krieg ich nicht hin *schäm* also soll dann der "wenn" teil in das coding oder im coding auf stoerbez verweisen, geht nämnlich beides nicht, zumindest nicht wie ich das gemacht habe...
erst das:
dim rs2 as dao.recordset
set rs2 db.openrecordset (stoer)

dann? irgendwie das
Clip = rs2!StoerBez
mit dem
=[QU] & Wenn([NKomponente] Ist Null;Wenn([EbeneStufe]>=3;[KomBez3]) & Wenn([EbeneStufe]>=4;" -- " & [KomBez4]) & Wenn([EbeneStufe]>=5;" -- " & [KomBez5]) & Wenn([EbeneStufe]>=6;" -- " & [KomBez6]) & Wenn([EbeneStufe]>=7;" -- " & [KomBez7]);Wenn([EbeneStufe]=3;[NKomponente];Wenn([EbeneStufe]>=4;[KomBez3]) & Wenn([EbeneStufe]>=5;" -- " & [KomBez4]) & Wenn([EbeneStufe]>=6;" -- " & [KomBez5]) & Wenn([EbeneStufe]>=7;" -- " & [KomBez6]) & " -- " & [NKomponente]))
verbinden und irgendwo ja nocht "stoer" übergeben?

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 10.12.04 13:24

Puh, das iss für mich nun auch zu hoch,
Da heißt es einfach nur ausprobieren, der PC wird schon nicht gleich explodieren.
was macht due Funktion denn? wenn ich mal blöd fragen darf HI HI

Gruß Armin

P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 10.12.04 13:36

Puuh, da bin ich glaub ich jetzt endlichziemlich überfordert.
Also was: =[QU] das heißt? keine ahnung, schau doch mal ob du irgendwo in der Hilfeas findest.
Mit der WQenn - Bedingung, ist das glaub ich so, dass die Wenn bedingung bis zum letzten Komma geht, und was danach steht ist dann glaub ich das was pasieren soll wenn die Wenn - Bedingung stimmt. Aber leg mich da jetzt bitte nicht drauf fest. Sorry, aber ich sag ja, ich bin auch nur Anfänger(also zumindest kein Profi) aber den gibts glaub eh nicht, dazu ist VB und Access viel zu gross um da alles zu beherschen.
So Annabelle für heut muß ich dich allein lassen mit deinem Prob, ich hab jetzt dann gleich Feierabend. Schau doch mal was du bis Montag noch so alles rausfinden kannst. Hier, in der Hilfe oder in anderen Foren.
Ich wünsche dir auf jeden Fall ein schönes rughiges und genütliches Adventswochenende. bis demnächst dann wieder hier oder so.

Gruß Armin
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 13:40

Die belegt den Windows Zwischenspeicher mit den Werten, die kann allerdings noch mehr aber Clipboard_SetData ist das was ich brauche
Hab ich selbst geschrieben!
Quatsch! aber das weißt sicherlich selbst ;)

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 13:43

Ne, da weiß ich wieder mehr QU ist ein Feld was die Daten aus der Spalte "Quittiert holt wenn also irgendwas so ist wie in der klausel dann wird der wert aus der dazugehörigen Quittiert- Zeile ausgegeben ;)
Ich denke ich lass das auch bis montag erstmal ruhen, wenn man sich ablenkt gehts meistens am nächsten tag eh besser. Und meine Birne raucht nun auch ziemlich, zudem erfahr ich grad das mein Lieblingsgitarist ( Darrell Lance Abott erschossen wurde
Schönes Wochenende und vielen Dank an Dich!

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 10.12.04 13:47

Das mit dem StoerBez2 Feld ist auch erstmal nicht so wichtig,
wenn du mir vielleicht sagen könntest wie ich die clipboard funktion nach jedem schleifen durchlauf mit den werten füttere dann haben wir wenigstesn schonmal die vollständige Tabelle und das andere wird dann auch irgendwie noch hinhaun ;)

Schonmal ein riesengroßes DANKESCHÖN für die Hilfe!!!!

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 13.12.04 09:05

Hi Anna, na schönes WE gehabt?
Dann kannsa ja jetzt wieder in die vollen gehen.
Also hier jetzt noch mal die Schleife.
While Not rs.EOF
Clip = rs!Zeitstempel & vbTab & rs!DauerKompakt & vbTab
Clip = Clip & rs!DefektBez & vbTab
Clip = Clip & rs!MassnameBez & vbCrLf
Call ClipBoard_SetData(Clip)
rs.MoveNext
Wend
Und wenn du dein Stoer'Bez Feld doch noch brauchst, müßtest du halt aus der Wenn - Bedingung eine If - Abfrage basteln, und die dann in die Leseschleife mit einbauen.Aber eigentlich solltest du dir nach dem Streass dir jetzt deinen Urlaub gönnen.
Gruß Armin

P.S.: always look on the bright side of Life!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Annabelle
Datum: 13.12.04 09:16

Ging so, war auf einem Konzert- Nazareth, falls du die kennst
Machen sehr guten Rock.
Habe ja eigentlich schon Urlaub aber das beschäftig mich zu sehr.
Also das mit der Schleife klappt so nicht, hatte ich auch schon probiert,
er kopiert dann wieder nur den letzten datensatz
Kann es sein das das eher an der win zwischenablage liegt, weil wenn ich
etwas mit strg und c kopiere und das dann wiederhole ist das erste ja auch
überschrieben?!?! Ist das vielleicht das Problem? Dann könnten wir das ja eigentlich so gar nicht lösen, sondern müssten eine direkte verbindung mit excel herstellen.

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

GESCHAFFT!!! 
Autor: Annabelle
Datum: 13.12.04 09:51

rs.MoveFirst
Clip = ""
While Not rs.EOF
Clip = Clip & rs!Zeitstempel & vbTab & rs!DauerKompakt & vbTab
Clip = Clip & rs!DefektBez & vbTab
Clip = Clip & rs!MassnameBez & vbCrLf
rs.MoveNext
Wend
Call ClipBoard_SetData(Clip)
rs.MoveFirst

Es klappt!!!!!!
Es lag daran das die Variable Clip immer überschrieben wurde!
Nun hat es mit obigem Code super hin!
VIELEN VIELEN DANK! für die ermunternden Worte und die grandiose Hilfe!
Das wird sicher nicht mein letztes Problem gewesen sein, also wirst mich nicht so schnelle los werden ;)
Danke!

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: GESCHAFFT!!! 
Autor: Annabelle
Datum: 13.12.04 10:05

Obwohl!
StoerBez2 hab ich ja noch gar nicht drin :'(
jetzt hab ich mich zu früh gefreut.
Hast du eine ugefähre idee wie die if aussehen muss? und wie ich die dort mit einfüge?

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: GESCHAFFT!!! 
Autor: Prian0815
Datum: 13.12.04 10:55

Hi Anna, gern geschehn.Hat auch echt Spass gemacht. wenn du wieder mal so n Prob mit DB hast, darfst mich auch gern anmailen( bin nämlich ab 10.01.05 nich mehr so oft im Büro, und dann iss gscheiter ich krieg n M;ail) die Addi hast du ja.Aber ich denke für die meisten Probs kriegst du auch hier gute Hilfe.

Gruß Armin

P.S.: always look on the bright side of Life
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: GESCHAFFT!!! 
Autor: Prian0815
Datum: 13.12.04 11:09

Also erst mal würd ich die Schleife noch n bischen umbauen, ungefähr so:
rs.MoveFirst
While Not rs.EOF
Clip = ""
Clip = Clip & rs!Zeitstempel & vbTab & rs!DauerKompakt & vbTab
und hier(also dann wenn du dein Feld Stoerbez2 brauchst dann das
if (hier die Wenn- Bedingung aus der Feldeigenschaft) then
hier die Dann- Anweissung aus der Feldeigenschaft
clip = clip & stoerbez2
endif
Clip = Clip & rs!DefektBez & vbTab
Clip = Clip & rs!MassnameBez & vbCrLf
rs.MoveNext
Wend
Call ClipBoard_SetData(Clip)
und wie gesagt, die wenn - Bedingung geht glaub ich bis zum ersten Komma, dann müßte die Dann - Anweisung kommen und dann vielleicht noch eine ansonsten. Aber das bekommst du bestimmt über die Hilfe raus.

Gruß Armin

P.S.: always look on the bright side of Life
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Endlos- Textbox, alle Werte ausgeben 
Autor: Prian0815
Datum: 13.12.04 11:13

ooooooooooooooooooooh Mann, und dann geht die gute auch noch auf ein Nazareth - Konzert. Man gehts dir gut. Also da wär ich dann auch sehr gern gewesen, die machen schon wirklich ganz klasse Musik. Aber ich gönns dir, das hast du dir nach dem Stress mit Access wohl verdient.

Gruß Armin

P.S.: always look on the bright side of Life
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

If Anweisung 
Autor: Annabelle
Datum: 13.12.04 11:14

Dort ist aber kein Komma?
Stuerelementinhalt von Stoerbez2:

=[QU] & Wenn([NKomponente] Ist Null;Wenn([EbeneStufe]>=3;[KomBez3]) & Wenn([EbeneStufe]>=4;" -- " & [KomBez4]) & Wenn([EbeneStufe]>=5;" -- " & [KomBez5]) & Wenn([EbeneStufe]>=6;" -- " & [KomBez6]) & Wenn([EbeneStufe]>=7;" -- " & [KomBez7]);Wenn([EbeneStufe]=3;[NKomponente];Wenn([EbeneStufe]>=4;[KomBez3]) & Wenn([EbeneStufe]>=5;" -- " & [KomBez4]) & Wenn([EbeneStufe]>=6;" -- " & [KomBez5]) & Wenn([EbeneStufe]>=7;" -- " & [KomBez6]) & " -- " & [NKomponente]))

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: If Anweisung 
Autor: Prian0815
Datum: 13.12.04 11:32

Ha, das schaut schon echt krass aus,
=[QU] & Wenn([NKomponente] Ist Null;Wenn([EbeneStufe]>=3;[KomBez3]) & Wenn([EbeneStufe]>=4;" -- " & [KomBez4]) & Wenn([EbeneStufe]>=5;" -- " & [KomBez5]) & Wenn([EbeneStufe]>=6;" -- " & [KomBez6]) & Wenn([EbeneStufe]>=7;" -- " & [KomBez7]);Wenn([EbeneStufe]=3;[NKomponente];Wenn([EbeneStufe]>=4;[KomBez3]) & Wenn([EbeneStufe]>=5;" -- " & [KomBez4]) & Wenn([EbeneStufe]>=6;" -- " & [KomBez5]) & Wenn([EbeneStufe]>=7
ist es möglich? das das ganze ungefähr so ist, FeldStoerbez ist immer QU plus ein Anhang je nachdem wie die Nkomponente bzw. die KomBez oder dieEbeneStufe bestückt sind. Ich werd so auf Anhieb nicht schlau draus, aber irgendwas in der Art muß es sein, ich hab jetzt auch in der Hilfe nix gefunden zum Thema Wenn.
Dafür könntest du vielleicht noch einen extra Beitrag aufmachen. Irgendjemand wirds schon wissen was dieser Steuerelement - Ausdruck bewirkt.

Gruß Armin

P.S.: always look on the bright side of Life
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: If Anweisung 
Autor: Annabelle
Datum: 13.12.04 11:44

Ja fast, also wenn quittiert wurde dann steht das da und zusätzlich die komponente die quittiert wurde.
Naja, das hat ja nun eh keinen Sinn mehr, ich bin ja fast schon weg
Ich werd dann nach dem Urlaub dazu nochmal nen Thread machen und mich im urlaub dazu auch nochmal schlau machen!
Danke!
Wir hören ganz sicher von einander ;)

t?tet keine v?gel, wir v?geln auch keine toten!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: If Anweisung 
Autor: Prian0815
Datum: 13.12.04 11:58

Yo Annabelle mach das, und genies deinen Urlaub, ich hab mich selten so darauf gefreut wie dieses Jahr. Und wieder von dir zu hören würde mich ehrlich gesagt richtig freuen, hat echt Spass gemacht.

Gruß Armin

P.S.: always look on the bright side of Life
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel