1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

beim Öffnen einer Excel- Vorlage neue Rechnungsnummer mittels Makro

Discussion in 'Office-Programme' started by Feinripptraeger, Jun 19, 2006.

Thread Status:
Not open for further replies.
  1. Servus mal wieder alle zusammen,

    vielleicht könnt ihr mir evtl. weiterhelfen. Folgende Ausgangssituation, ich soll für meinen Bruder ein Rechnungsformular erstelle. Also dacht ich mir biste in Excel wohl am besten bedient. doweit is ja auch alles noch in Ordnung. Seit 2004 ist es nun aber scheinbar Pflicht, das Rechnungen mit fortlaufenden Rechnungsnummer versehen werden müssen.

    Und nun kommt der Clou, ich hab nun meine Rechnung als Vorlage gespeichert und will mittels einer Makroprogramierung erreichen, dass sich beim öffnen der Vorlage der Wert im Feld Rechnungsnummer um eins erhöht.
    Aber nur bei öffnen der leeren Vorlage.

    Des weiteren wäre es sicher sinnvoll wenn dann die Rechnungsnummer zusätzlich an den Dateinamen unter dem die Rechnung gespeichert wird angehängt wird.

    Ich persönlich bin in dem Bereich noch ein totaler Newbie und weiß eigentlich nur wie ich in den Editor komme.
    Kann mir irgend jemand helfen. Ich hab schon diverse Foren durchforstet aber noch nichts genau auf meinen Fall zugeschnittenes Gefunden.

    Danke schon mal im Voraus für eure Bemühungen und es wird jegliche Art von Hilfe dankend angenommen.


    Pfuirti

    Feinripptraeger
     
  2. Angel-HRO

    Angel-HRO Megabyte

    Okay, das solltest du etwas anders lösen, z.B. über einen Button in Excel a la neue Rechnung erzeugen.
    Makros in einer Vorlage speichern ist...weiß nicht, lieber über ein AddIN lösen.

    Folgendes, sobald du auf den Button klickst soll folgendes passieren:

    Code:
    Workbooks.Add(Template:= _
            "C:\Programme\Microsoft Office\Vorlagen\Tabellenvorlagen\RECHNUNG.XLT"). _
            RunAutoMacros Which:=xlAutoOpen
        
    
    Die Rechnungsnummern solltest du in einer seperaten Datei speichern
    Aufbau:
    Rechnungsnummer |Datum | Betrag |Mwst |Gesamt

    Nun soll Excel diese Datei öffnen und die letzte vergebene Nummer suchen und um 1 erhöhen (in diesem Falle sollten mindesntens schon eine Rechnungsnummer exisiteiren!)
    Code:
        Workbooks.Open FileName:="C:\XlsRechnung\Rechnungsnummern.xls"
    Dim i As Long
        Dim lNr As Long
        Dim sheet As Worksheet
        Set sheet = ActiveSheet
        i = sheet.UsedRange.Rows
        lNr = sheet.Cells(i, 1)+1
    
    So sollte das in etwa funktionieren. Die neuen Werte einer Rechnung (ich würde das übrigens mit Klick auf den Button SOFORT drucken)

    Letztendlich sollte es idealerweise über mehrere Schritte laufen:
    eine Tabelle für Eingabe der Positionen (die du übrigens auch nochmal seperat abspeichern solltest), von dort eine Funktion NeueRechnungErzeugen aufrufen, die in deine Vorlage die Positionen sowie eine neue Rechnungsnummer einträgt und das ganze sofort druckt (damit du sicherstellst, dass das was der Kunde erhält auch so verbucht ist!)

    Im übrigen denke ich ist Excel dafür ungeeignet, eine Access Datenbank sollte das Problem besser lösen, zudem ist es einfacher die gespeicerten Daten vor Manipulation zu schützen (da achtet das Finanzamt drauf), denn bei deiner Lösung kann man einfach die gespeicherte Rechnung verändern.

    Bei Access kann ich dir übrigens bald besser helfen als mit Excel, schreib mich einfach an, wenn du Hilfe brauchst
     
  3. captain89

    captain89 Byte

    Auch wenn Dein Wunsch evt. per Excel lösbar ist, so möchte ich doch dem vorigen Beitrag zustimmen und behaupten, dass Excel hierfür nur eine "Krücke" bleiben wird.

    Solche Aufgaben sind in Access wesentlich komfortabler (für den Anwender) und sicherer (!) zu lösen. Eingabe und Ansicht der Daten erfolgen in Formularen, die mit hoher Fehlerredundanz ausgestattet werden können. Außerdem lassen sich alle möglichen Daten abfragen (welcher Kunde hat diesen Monat Geburtstag, welcher Artikel wurde am meisten verkauft, welche Kunden wohnen in welchem PLZ-Gebiet usw.).

    Allerdings gebe ich zu bedenken, dass Access ein sehr umfangreiches Datenbank-Management-System ist und die Einarbeitung in Access bei genauerem Hinsehen sehr mühsam ist, da Grundsätze (wie z.B. die sogenannte "Normalisierung" von Tabellen, referentielle Integrität usw.) berücksichtigt werden müssen, um eine auf Dauer funktionierende und erweiterbare Datenbank zu erstellen.

    Fast zwangsläufig wäre in Access allerdings außer der automatischen Zuweisung einer neuen (und einzigartigen, unveränderbaren) Kundennummer eine Artikel- und Kundenverwaltung integriert.

    Eine Standard-Datenbank-Anwendung bestehend aus Artikeln, Kunden und Rechnungen ist für den geübten Anwender jedoch leicht zu verwirklichen. Bei Bedarf kannst Du (auch) mich gerne ansprechen um eine kostenlose oder (bei größerem Aufwand) kostengünstige Lösung für Deine Bedürfnisse zu erhalten.


    Schöne Grüße

    Steffen Wilberz
     
Thread Status:
Not open for further replies.

Share This Page