Ich mache ein Formular, das alle Teile in unserer Datenbank zeigt (aus unserer Master-Komponenten-Tabelle namens TAGS). Alle Werte werden ordnungsgemäß angezeigt, da sie aus der TAG-Tabelle abgerufen werden. Die Sache ist, als die Tabelle erstellt wurde, haben sie nie die Beschreibungen jedes Komponententyps eingegeben.Anzeigen bestimmter Text basierend auf Datenauswahl
Zum Beispiel sollte TagLabel "CON" in der Tabelle die Beschreibung "Condensers" aus Gründen der Klarheit im Bericht haben (einige der Etiketten sind nicht sehr intuitiv).
Ich versuche, VBA-Code zu verwenden, um eine Textbox (TagDescription) neben der TagLabel-Box zu formatieren, die die Beschreibungen basierend auf dem TagLabel anzeigt. Die "einfache", aber fürchterlich langweilige Lösung besteht darin, die TAG-Tabelle durchzugehen und manuell eine Beschreibungsspalte hinzuzufügen.
Ich versuche, so etwas zu tun, das zu vermeiden:
Private Sub Report_Page()
If Me.TagLabel = "CON" Then
Set Me.TagDescription = "Condensers"
End If
End Sub
Ich bin sicher, es ist nur eine einfache Syntax fix, aber ich habe ein paar Dinge ausprobiert, die nicht arbeiten, so als .value
und .text
bis zum Ende Me.TagLabel
usw. hinzufügen Vielen Dank für Ihre Hilfe im Voraus!
Sie sollten keine 'Set'-Werte eingeben. ** Wert ** Zuweisungen erfolgen mit dem Schlüsselwort "Let" oder gar keinem Schlüsselwort (da "Let" sowieso veraltet/unbrauchbar ist). Setze 'Set' für ** Referenz ** Zuweisungen. Zeichenfolgen sind Werte in VBA. –
@ Mat's Mug Ich nahm das 'Set' heraus und fügte das' .value' wieder hinzu, aber es funktioniert immer noch nicht. Irgendwelche anderen Vorschläge oder vielleicht Beispielcode? – cdomination
'.Value' und' .Text' sind * Standardeigenschaften * und, IMHO, sollten Sie sie am besten belassen und explizit darauf hinweisen. Standardeigenschaften sind eine böse Quelle von Bugs (nicht * hier in diesem Fall *, aber sich auf sie zu verlassen * wird dich einen Tag oder einen anderen beißen). Wenn Sie die 'If' Bedingung dort durchbrechen und den Wert von' Me.TagLabel' prüfen, heißt es dann "CON" '* genau *, ohne führende oder nachstehende Leerzeichen? –