Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
756to760
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
756to760
756to760
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

ActiveSheet.ShowDataForm in Makros

ActiveSheet.ShowDataForm in Makros
20.04.2006 20:24:20
StefanH
Hallo,
ich arbeite seit längerem mit dieser Datei für Rechnungen und Lieferscheine und möchte die Abläufe darin vereinfachen. Dazu habe ich eine Benutzermenü erstellt und möchte es mit Makros steuern. Ein Teil davon klappt auch, weil einfach.
Bei Handgebrauch gebe ich die Rechnungen und Lieferscheine immer mit dem Befehl Daten/Maske im dazugehörigen Spaltenbereich ein. Hier werden mir, wenn ich im Bereich der Datenreihe bin, auch immer nur die benötigten Felder (aus Zeilenüberschrift)angezeigt. Bei den Makros klappt das nicht, es wird mit dem Befehl "ActiveSheet.ShowDataForm" immer die ganze Zeile des Arbeitsblattes angezeigt.
Wie erreiche ich es, daß nur die drei oder vier Spalten in der Maske gezeigt werden? Und wie schaffe ich es, daß immer die letzte Zeil plus 1 genommen wird?
Die Datei ist in gekürzter Fassung hier hinterlegt. https://www.herber.de/bbs/user/33010.xls
Und wenn ich schon fragen kann, wie bringe ich denn die Makros rechnung_neu und ls_neu (in den Makros sind bestimmt auch Fehler, nicht meckern) im Modul 1 dazu, immer im dem Datum angepassten Monat das richtige Blatt (von jan bis dez) zu öffnen und an die oben beschriebene Position zu springen?
Gruß Stefan

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ActiveSheet.ShowDataForm in Makros
20.04.2006 21:23:41
xlSchnack
Hi Stefan,
der Datenbankbereich wird nicht gefunden. Ersetz mal dein Makro rechnung_neu durch dieses, da wird der Datenbankbereich vor Aufruf der Maske definiert:

Sub rechnung_neu()
ActiveWorkbook.Names.Add Name:="Database", RefersToR1C1:= _
"=OFFSET(R12C1,,,COUNTA(C1)-2,4)"
SendKeys "%n" 'damit steht die Maske zur Neuerfassung des nächsten Satzes bereit
CommandBars.FindControl(ID:=860).Execute
End Sub

Es stört auch den Ablauf der Maske, dass du das Datum wie in deinem Code vorher schon einsetzt für neue Datensätze.
Salut
AW: ActiveSheet.ShowDataForm in Makros
20.04.2006 21:36:30
StefanH
Hallo xlSchnack,
vielen Dank, erstes Problem gelöst und gleich auf die Lieferscheine angepasst. Läuft super.
Kann man den nun auch den entsprechenden Monat abfangen und das Tabellenblatt so vordefinieren?
Gruß Stefan
Anzeige
AW: ActiveSheet.ShowDataForm in Makros
21.04.2006 20:25:00
StefanH
Hallo xlSchnack
Ich habe die Lösung im Archiv gefunden:
Vor das Makro die Zeile
Sheets(Format(Date,"MMM")).Activate
einfügen und das Monatsblatt, bei mir mit drei Buchstaben, öffnet sich mit dem passenden Dialog. Läuft tadellos.
Gruß Stefan

107 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige