Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
von Unterformular auf ein anderes Unterformular zugreifen
zurück: Abfrage klappt nicht im Unterformular weiter: Formular schließen, ohne es zu speichern Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
darkreeper
Im Profil kannst Du frei den Rang ändern


Verfasst am:
02. Okt 2006, 14:30
Rufname:

von Unterformular auf ein anderes Unterformular zugreifen - von Unterformular auf ein anderes Unterformular zugreifen

Nach oben
       Version: Office 2003

Hallo Leute.

Ich habe mal wieder ein Problem mit nem Formular. Es handelt sich hierbei um ein Hauptformular mit mehreren Unterformularen. Es soll nun folgendes geschehen.
ich trage einen wert in dem einen unterformular ein. nun soll er den wert mit einem feld im hauptformular und einem feld in einem anderen unterformular vergleichen. ich glaube, dass bei mir die Syntax nicht passt.

habe folgendes versucht:
Code:
Function vergleich(vFeld As Control, vWert As Variant, index As Integer)
    Debug.Print vFeld; vWert
    Select Case index
      Case 1:
        If vWert = "n.i.O." Then
            vFeld.BackColor = RGB(255, 0, 0)
          ElseIf IsNull(vWert) Then
            vFeld.BackColor = RGB(235, 235, 235)
          Else
            vFeld.BackColor = RGB(235, 235, 235)
        End If
      Case 2:
        If vWert < Me.Parent!(vFeld.name).Value And _
           vWert > Me.Parent![SMax Unterformular].Form!(vFeld.name).Value Then
            vFeld.BackColor = RGB(235, 235, 235)
          ElseIf IsNull(vWert) Then
            vFeld.BackColor = RGB(235, 235, 235)
          Else
            vFeld.BackColor = RGB(235, 235, 235)
        End If
    End Select
End Function
was ich dazu sagen muss. Diese funktion aus dem hauptcode aufgerufen. dieser sieht so aus
Code:
Private Sub Dichte_AfterUpdate()
    wert = Me![Dichte]
    Set Feld = Me![Dichte]
    uebergabe = vergleich(Feld, wert, 2)
End Sub
Die Variablen Feld, wert und uebergabe sind public.
Code:
Public Feld         As Control
Public wert         As Variant
Public uebergabe    As Variant
Das ist alles an Code, was ich habe. Bekomme die Fehlermeldung bei Case 2:
Zitat:
Typkennzeichen entspricht nicht deklariertem Typ
und das .Parent! ist markiert
Hoffe, dass ihr damit zurecht kommt und mir einen Tipp geben könnt.

Liebe Grüße
Darkreeper
rita2008
Im Profil kannst Du frei den Rang ändern


Verfasst am:
02. Okt 2006, 18:49
Rufname:
Wohnort: Berlin


AW: von Unterformular auf ein anderes Unterformular zugreife - AW: von Unterformular auf ein anderes Unterformular zugreife

Nach oben
       Version: Office 2003

Da Du vFeld als Control übergibst, brauchst Du den Zugriff auf Parent gar nicht. Allerdings ist mir nicht klar, wieso das Feld einmal in Hauptformular und einmal im Unterformular sein soll. Wolltest Du vielleicht nur den Namen übergeben?
_________________
mfg Rita

Antworten bitte hier im Forum, nicht als private Nachricht. Danke
darkreeper
Im Profil kannst Du frei den Rang ändern


Verfasst am:
03. Okt 2006, 12:10
Rufname:

AW: von Unterformular auf ein anderes Unterformular zugreife - AW: von Unterformular auf ein anderes Unterformular zugreife

Nach oben
       Version: Office 2003

hallo rita.

was ich machen will ist folgendes. im UFO1 habe ich ein Feld, dessen Wert ich vergleichen möchte, mit
einem Feld im HF
und einem Feld im UFO2.

Die 3 Felder haben den gleichen Namen, nur unterschiedliche Werte und eben diese Werte sollen miteinander verglichen werden.
Wenn nun der Wert aus dem UFO1 kleiner als der im HF ist oder größer als der aus dem UFO2, dann soll er den hintergrund rot machen. das ist alles. und genau damit hab ich ein problem.
es sind mehrere Felder, die überprüft werden sollen. am besten direkt, nachdem ein wert eingetragen wurde.
wie kann ich das noch realisieren ? bedingte formatierung ?

gruß

darkreeper
Nouba
nicht ganz unwissend :)


Verfasst am:
03. Okt 2006, 12:20
Rufname:
Wohnort: Berlin

AW: von Unterformular auf ein anderes Unterformular zugreife - AW: von Unterformular auf ein anderes Unterformular zugreife

Nach oben
       Version: Office 2003

Hallo,

verwende Audrücke wie Me.Parent(vFeld.Name) bzw. wie Me.Parent![SMax Unterformular].Form(vFeld.Name) in Deinem Kode.

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
darkreeper
Im Profil kannst Du frei den Rang ändern


Verfasst am:
03. Okt 2006, 12:32
Rufname:


AW: von Unterformular auf ein anderes Unterformular zugreife - AW: von Unterformular auf ein anderes Unterformular zugreife

Nach oben
       Version: Office 2003

hallo nouba.

vielen dank mal wieder. hat wunderbar geklappt.

gruß

darkreeper

p.s.: ist es auch möglich, das allgemein für das ufo zu formulieren, damit ich das nicht jedesmal für das feld im code eintragen muss ?
rita2008
Im Profil kannst Du frei den Rang ändern


Verfasst am:
03. Okt 2006, 12:52
Rufname:
Wohnort: Berlin

AW: von Unterformular auf ein anderes Unterformular zugreife - AW: von Unterformular auf ein anderes Unterformular zugreife

Nach oben
       Version: Office 2003

Zitat:
Die 3 Felder haben den gleichen Namen, nur unterschiedliche Werte
Dann hätte ich im Funktionsparameter aber gleich den Namen übergeben, statt des Feldes selbst.
_________________
mfg Rita

Antworten bitte hier im Forum, nicht als private Nachricht. Danke
Willi Wipp
Moderator


Verfasst am:
03. Okt 2006, 12:52
Rufname:
Wohnort: Raum Wiesbaden

Re: AW: von Unterformular auf ein anderes Unterformular zugr - Re: AW: von Unterformular auf ein anderes Unterformular zugr

Nach oben
       Version: Office 2003

Hi darkreeper,
Zitat:
p.s.: ist es auch möglich, das allgemein für das ufo zu formulieren, damit ich das nicht jedesmal für das feld im code eintragen muss ?

sorry Embarassed das habe ich jetzt nicht ganz verstanden

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
darkreeper
Im Profil kannst Du frei den Rang ändern


Verfasst am:
03. Okt 2006, 12:59
Rufname:

AW: von Unterformular auf ein anderes Unterformular zugreife - AW: von Unterformular auf ein anderes Unterformular zugreife

Nach oben
       Version: Office 2003

hehe.

aaaaaallllllsssssoooooo

momentan sieht es so aus, dass ich das feld anklicke und dann bei "nach aktualisierung" die funktion aufrufe und dieser die einzelnen werte übergebe.

kann ich das auch allgemein für das ufo festlegen, dass ich das nicht jedesmal im feld eintragen muss ? also, dass es am ende so läuft, dass ich einen wert eintrage und er diesen nach dem aktualisieren oder verlassen überprüft.

so ist es glaub ich besser erklärt. Very Happy

gruß

darkreeper
Willi Wipp
Moderator


Verfasst am:
14. Okt 2006, 18:44
Rufname:
Wohnort: Raum Wiesbaden

Re: von Unterformular auf ein anderes Unterformular zugreife - Re: von Unterformular auf ein anderes Unterformular zugreife

Nach oben
       Version: Office 2003

Hi darkreeper,

das koenntest du z.B. mit einer Formular-Funktion und der Formular-Eigenschaft Me.ActiveControl machen.
Bei den Steuerelement-Ereignissen Nach Aktualisierung (AfterUpdate) musst du dann nur noch eintragen
Code:
=NameDerFunktion()

PS: Als moeglicher Loesungsansatz
Code:
Function VergleichNachAktualisierung()
    Dim lngIndex    As Long
    Dim strFeld     As String
    Dim ctlFeld     As Control
    Dim varWert     As Variant
   
    Set ctl = Me.ActiveControl                          'aktives Steuerelement
    varWert = ctl                                       '.Value kann entfallen
    Debug.Print ctl.Name; varWert
    ' Das musst Du anpassen!
    ' Mir ist leider nicht bekannt wie du den Index (ein)setzt
    Select Case ctl.Name
      Case "Dichte"
        lngIndex = 2
    End Select
    Select Case lngIndex
      Case 1:
        If varWert = "n.i.O." Then
            ctlFeld.BackColor = RGB(255, 0, 0)
          ElseIf IsNull(varWert) Then
            ctlFeld.BackColor = RGB(235, 235, 235)
          Else
            ctlFeld.BackColor = RGB(235, 235, 235)
        End If
      Case 2:
        strFeld = ctlFeld.Name
        If varWert < Me.Parent!(strFeld).Value And _
           varWert > Me.Parent![SMax Unterformular].Form!(strFeld).Value Then
            ctlFeld.BackColor = RGB(235, 235, 235)
          ElseIf IsNull(varWert) Then
            ctlFeld.BackColor = RGB(235, 235, 235)
          Else
            ctlFeld.BackColor = RGB(235, 235, 235)
        End If
    End Select
End Function

' und dann bei den Steuerelement-Ereignissen in der Entwurfansicht '=VergleichNachAktualisierung()

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)


Zuletzt bearbeitet von Willi Wipp am 15. Okt 2006, 00:47, insgesamt 2-mal bearbeitet
darkreeper
Im Profil kannst Du frei den Rang ändern


Verfasst am:
14. Okt 2006, 19:47
Rufname:


AW: von Unterformular auf ein anderes Unterformular zugreife - AW: von Unterformular auf ein anderes Unterformular zugreife

Nach oben
       Version: Office 2003

Hallo Willi.

Deinen Ansatz finde ich sehr gut. Mal schauen, was sich da noch so draus basteln läßt.

Vielen, vielen Dank. Werde dir mitteilen, was daraus geworden ist.

Gruß

Darkreeper
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Laufende Uhrzeit im Unterformular 3 Iron70 305 23. Sep 2012, 07:57
Iron70 Laufende Uhrzeit im Unterformular
Keine neuen Beiträge Access Tabellen & Abfragen: Unterformular Neuer Datensatz nicht am Schluss 1 chris374 389 03. März 2012, 10:56
KlausMz Unterformular Neuer Datensatz nicht am Schluss
Keine neuen Beiträge Access Tabellen & Abfragen: Unterformular per SQL füllen / Objekt geschlossen... 6 htc.zenit 513 15. Feb 2012, 18:12
Gast Unterformular per SQL füllen / Objekt geschlossen...
Keine neuen Beiträge Access Tabellen & Abfragen: Spalte auf andere Spalte zugreifen 2 bmwGTR 202 13. Jul 2011, 13:24
Gast Spalte auf andere Spalte zugreifen
Keine neuen Beiträge Access Tabellen & Abfragen: Unterformular für Artikelbestellung 5 JochenGAST 304 01. März 2011, 20:10
KlausMz Unterformular für Artikelbestellung
Keine neuen Beiträge Access Tabellen & Abfragen: Variabler Wert in einem Abhängigem Unterformular 7 Ogni 589 07. Feb 2011, 18:45
Bitsqueezer Variabler Wert in einem Abhängigem Unterformular
Keine neuen Beiträge Access Tabellen & Abfragen: Leere Abfrage wenn kein Wert im Unterformular??? 5 Gast 588 23. Dez 2010, 15:02
Willi Wipp Leere Abfrage wenn kein Wert im Unterformular???
Keine neuen Beiträge Access Tabellen & Abfragen: Query in Excel: 2 Parameter die auf Zellen zugreifen 3 Mnemonic 1416 20. Sep 2010, 19:03
Gast Query in Excel: 2 Parameter die auf Zellen zugreifen
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage in Unterformular 3 Hundshamer 302 25. Mai 2010, 11:22
blackoutNO Abfrage in Unterformular
Keine neuen Beiträge Access Tabellen & Abfragen: Auf zweiten Wert eines Kombinationsfelds zugreifen 11 Michael Barth 303 22. Mai 2009, 09:36
Gast Auf zweiten Wert eines Kombinationsfelds zugreifen
Keine neuen Beiträge Access Tabellen & Abfragen: Auf x. Spalte in Kombifeld zugreifen 3 Jottwd 496 28. März 2009, 18:07
Willi Wipp Auf x. Spalte in Kombifeld zugreifen
Keine neuen Beiträge Access Tabellen & Abfragen: Auf Abfrage zugreifen 2 Gastuser12 303 14. Okt 2008, 20:25
Gast Auf Abfrage zugreifen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Project