Arnie Geschrieben 9. Mai 2003 Geschrieben 9. Mai 2003 Hallo miteinander, ich habe unter Access ein Formular mit einige Textfeldern. Dem Formular weise ich einen Recordsource zu. Daher macht er eine Liste aus den Textfeldern. Als Benennung für die eizelnen Spalten zieht er sich die Namensgebung der einzelnen Textfelder heran. Ich will jetzt aber, abhängig von Abfragewerten die Spaltennamen zur Laufzeit verändern können, doch das geht nicht. Ich habe es schon mit Text1.name = "Test" versucht, doch die Fehlermeldung sagt mir, ich können diese Anweisung nur in der Entwicklungsumgebung ausführen. Nun meine Frage: Ist dies überhaupt möglich (und wenn, wie)? Danke im voraus Arnie
geloescht_JesterDay Geschrieben 9. Mai 2003 Geschrieben 9. Mai 2003 ich kapiere nicht, warum man eine Komponente zur Laufzeit umbenennen will? Ganz davon abgesehen, denke nicht das sowas möglich ist. Nach dem Compilieren weiss das Programm mit dem Namen ncihts mehr anzufangen, der Name ist nur eine Erleichterung für den Menschen (vergleichbar mit den Domainnamen, die ja eigentlich auch IP-Adressen sind).Der Compiler wandelt das in Adressen innerhalb des Programms bzw. des Speichers um. Diese Adresse zur Laufzeit zu ändern würde ein Neucompilieren erfordern...
Bombay Geschrieben 11. Mai 2003 Geschrieben 11. Mai 2003 Mir is zwas auch nicht so klar was du damit bezwecken willst, aber falls es unbedingt nötig ist, hier mal ein kleiner WorkAround: Du kannst nämlich beliebig Referenzen auf Formobjekte vergeben. Angenommen du willst einen Button cmdLogin mit einem anderen Namen ansprechen (warum auch immer :-), machst du folgendes: Dim cmdAuchLogin as CommandButton Set cmdAuchLogin=cmdLogin cmdAuchLogin.Caption="Ich kann das auch!"
Arnie Geschrieben 12. Mai 2003 Autor Geschrieben 12. Mai 2003 Habe das "Workaround" mal ausprobiert, doch bekomme den gleichen Fehler (Laufzeitfehler '2136'; "Damit sie diese Eigenschaft einstellen können, müssen Sie das Formular bzw. den Bericht in der Entwurfsansicht öffnen.") Ich will das machen, da man in einem Formular die SQL Abfrage anpassen kann. In einer Tabellenspalte soll dann z.B. "2 Tage", "3 Tage", etc. stehen. Je nach Abfrage. Das ist der Grund. War nicht meine Idee, sondern die meines Ausbilders ;-) MfG Arnie
DerMatze Geschrieben 12. Mai 2003 Geschrieben 12. Mai 2003 Also heißt das, wenn ich mich nicht irre, dass du nicht den Namen des Textfeldes änder willst, sondern eine Überschirft ??? Wenn ja, nimm dir einfach ein Label und ändere dabei während der Laufzeit die Beschriftung lblTage.Caption = "3 Tage" Matze
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden