Hallo Nicole,
ohne Dich entmutigen zu wollen. Ich glaube nicht, das Du ohne nähere Beschäftigung mit VBA zum Ziel kommst.
Ich kann Dir wenn Du möchtest, eine elektronisches Buch zu VisualBasic senden, das ich seinerzeit mal im Internet for free downloaden konnte.
Generell - es gibt in Excel einen Makro-Recorder.
Du könntest z.b. ein Makro aufnehmen und eine neue Zeile einfügen. Wenn Du nun in den VBA-Editor wechselst(alt+f11), siehst Du den erzeugten Code, den Du verwenden kannst.
Mit dieser ominösen Fehlermeldung meine ich, das wenn der Datensatzzeiger auf dem 1ten Datensatz steht und jemand "zurück" drückt(sofern das nicht vorraussichtlich beim 1ten Datensatz dekativiert wird), das dies abgefangen wird. Da der Zähler nicht auf 0 wechseln kann, es gibt ja keine nullte zeile in excel.
ein "wenn"-abfrage ist z.b.
if bedingung = true then
'mache das
end if
für deinen combobox-select programmierst du am besten ein ereignis
sub combobox_selectionchange 'oder so
textbox1.text = cells(zeilenzaehler, 1)
'etc
end sub
probiers mal, wie weit du kommst, und bevor du am verzweifeln bist, sende mir die exceldatei und ich werd mal drüberschaun
viele grüße
rasta
Nicole schrieb am 22.06.2004 14:05:49:
Hallo Rasta!
Vielen Dank für deinen Rat! Leider hab ich von Access noch weniger Ahnung als von VBA! ;-)
Ich werde deine Idee heute Abend mal versuchen umzustetzen. Glaube aber nicht, dass sie funktioniert., WEIL ich bei der Neulanlage eines projektes immer eine neue Zeile oberhalb der anderen Projekte einfügen lasse. Da klappt, das mit dem Zähler wohl nicht! Weißt du wie ich das anders machen kann?
Außerdem bräuchte ich so etwas wie eine WENN-Funktion.
WENN(Projekt A in Combobox1 ausgewählt; Zeige mir in Textbox1 die Beschreibung)
Der Name Projekt A steht in Spalte A und die Beschreibung in Spalte B!
Was meinst du mit dieser "ominösen" Fehlerprüfung?
Vielen Dank Nicole
Rasta schrieb am 21.06.2004 17:25:05:
Hallo Nicole,
einfacher wäre es, wenn Du Deine Projektdaten in einer Access-Tabelle gespeichert hättest.
Dann könnte man Ruckzuck mit ein paar Mausklicks die von Dir gewünschte Funktionalität herstellen.
Mit einem Excel-Sheet ist dies aber grundsätzlich auch möglich
Ich helfe Dir gerbe in Richtung der Lösung -- kann Dir aber keine komplette liefern.,
In excel gibt es zeilen und spalten. wahrscheinlich ist es so, das deine excel-tabelle oben von links nach rechts eine überschrift hat und zeile für zeile deine daten stehen.
excel-zellen werden in vba so angesprochen: cells(zeile, spalte)
d.h.
cells(1, 1) = "Hallo Nicole"
bewrikt das links oben "Hallo Nicole" geschrieben wird.
nun schaffst du dir einen ZeilenZähler
dim Zeile as long
beim start der vba-form liest du die daten in dein formular ein. bsp:
zeile = 1
textbox1.text = cells(zeile, 1)
textbox2.text = cells(zeile, 2)
textbox3.text = cells(zeile, 3)
beim wechsel des datensatzes zählst du einfach die zeile in die betreffende richtung, und liesst die daten aktuell aus.
beim neuen datensatz die edaten am ende anfügen.
fehlerprüfung das nicht vor den anfang gesprungen werden kann.
das sind so mal meine gednanken :-)
kommst du damit z.b. ein bisschen weiter?
gruß
rasta
Nicole schrieb am 21.06.2004 15:59:44:
Hallo!
Ich habe ein kleines Problem. Ich habe eine Exceltabelle über diverse Projekte angelegt. Diese enthält u.a. Name, Beschreibung, Status.
Per VBA habe ich je ein Formular erstellt um ein Projekt neuanzulegen und um einen Projektbericht zu erhalten.
Ich möchte auch ein Formular um bereits bestehende Projekteinträge zu ändern. Leider klappt das mit der Umsetzung nicht.
Die Logik soll sein, dass man per Drop-Down Menü ein spezielles Projekt auswählt und daraufhin in bestimmten Steuerungselementen die aktuellen Einträge der Tabelle erscheinen, die man dann ändern kann.
Per Command Button soll das ganze übernommen und gespeichert werden!
Kann mir jemand weiterhelfen. Bin leider nicht besonders geübt im Umgang mit VBA!
by Nicole |