Ich hab das Problem gelöst. der Code um den Dialog zu starten sieht nun folgendermassen aus:
Code: Alles auswählen
Sub Dokuerstellen
Dim Doc As Object
Dim Url As String
Dim oSheet As Object
Dim Dummy()
Url = "file:///C:/Users/Dave/Desktop/nur Dave Offertenvorlage1.ods"
Doc = StarDesktop.loadComponentFromURL(Url, "_blank", 0, Dummy())
Doc.BasicLibraries.LoadLibrary("Standard")
Doc.DialogLibraries.LoadLibrary("Standard")
oForm = Doc.DialogLibraries.Standard.dOffertenerstellen
Dlg = CreateUnoDialog(oForm)
DateField1111 = dlg.getControl("DateField1111")
oDateFieldModel = dlg.Model.DateField1111
oDateFieldModel.Text = date 'aktuelles Datum im Datefield anzeigen
oDoc2= ThisComponent
oForm = oDoc2.DrawPage.Forms.getbyname("Kunden")
oFeld1 = oForm.getbyname("txtAnrede")
sID1 = oFeld1.text
TextField1 = dlg.getControl("TextField1")
oTextFieldModel = dlg.Model.TextField1
oTextFieldModel.Text = sID1
oFeld2 = oForm.getbyname("txtVorname")
sID2 = oFeld2.text
TextField2 = dlg.getControl("TextField2")
oTextFieldModel = dlg.Model.TextField2
oTextFieldModel.Text = sID2
oFeld3 = oForm.getbyname("txtNachname")
sID3 = oFeld3.text
TextField3 = dlg.getControl("TextField3")
oTextFieldModel = dlg.Model.TextField3
oTextFieldModel.Text = sID3
oForm2 = oForm.getbyname("Adressen")
oFeld4 = oForm2.getbyname("txtAdressen")
sID4 = oFeld4.text
TextField4 = dlg.getControl("TextField4")
oTextFieldModel = dlg.Model.TextField4
oTextFieldModel.Text = sID4
oFeld5 = oForm2.getbyname("txtPLZ")
sID5 = oFeld5.text
TextField5 = dlg.getControl("TextField5")
oTextFieldModel = dlg.Model.TextField5
oTextFieldModel.Text = sID5
oFeld6 = oForm2.getbyname("txtOrt")
sID6 = oFeld6.text
TextField6 = dlg.getControl("TextField6")
oTextFieldModel = dlg.Model.TextField6
oTextFieldModel.Text = sID6
oFeld7 = oForm.getbyname("fmtID2")
sID7 = oFeld7.text
TextField7 = dlg.getControl("TextField7")
oTextFieldModel = dlg.Model.TextField7
oTextFieldModel.Text = sID7
oForm3 = oForm.getbyname("Kundennummer")
oFeld8 = oForm3.getbyname("Kundennummer2")
sID8 = oFeld8.text
TextField8 = dlg.getControl("TextField8")
oTextFieldModel = dlg.Model.TextField8
oTextFieldModel.Text = sID8
Dlg.execute()
REM Datum übertragen
oDoc = ThisComponent
oSheet = Doc.CurrentController.getactiveSheet()
oZell = oSheet.getCellRangeByName("B15") 'Zelle anpassen
myDate = DateField1111.text
oZell.Value= CDate(myDate)
'oZell.NumberFormat = 30 'Format 13.05.06
'oZell.NumberFormat = 31 'Format Sa 13.Mai 06
'oZell.NumberFormat = 32 'Format 05.06
'oZell.NumberFormat = 33 'Format 13.Mai
'oZell.NumberFormat = 34 'Format Mai
'oZell.NumberFormat = 35 'Format 2. Quartal 06
oZell.NumberFormat = 36 'Format 13.05.2006
'oZell.NumberFormat = 38 'Format Samstag, 13. Mai 2006
'oZell.NumberFormat = 39 'Format 13. Mai 06
MyCtrl1= dlg.getControl("TextField1")
MyText1 = MyCtrl1.Model.Text
mycell1 = oSheet.getCellRangeByName("C7")
mycell1.string=MyText1
MyCtrl2= dlg.getControl("TextField2")
MyText2 = MyCtrl2.Model.Text
mycell2 = oSheet.getCellRangeByName("C1")
mycell2.string=MyText2
MyCtrl3= dlg.getControl("TextField3")
MyText3 = MyCtrl3.Model.Text
mycell3 = oSheet.getCellRangeByName("D1")
mycell3.string=MyText3
MyCtrl4= dlg.getControl("TextField4")
MyText4 = MyCtrl4.Model.Text
mycell4 = oSheet.getCellRangeByName("C9")
mycell4.string=MyText4
MyCtrl5= dlg.getControl("TextField5")
MyText5 = MyCtrl5.Model.Text
mycell5 = oSheet.getCellRangeByName("C2")
mycell5.string=MyText5
MyCtrl6= dlg.getControl("TextField6")
MyText6 = MyCtrl6.Model.Text
mycell6 = oSheet.getCellRangeByName("D2")
mycell6.string=MyText6
MyCtrl7= dlg.getControl("TextField7")
MyText7 = MyCtrl7.Model.Text
mycell7 = oSheet.getCellRangeByName("E2")
mycell7.string=MyText7
MyCtrl8= dlg.getControl("TextField8")
MyText8 = MyCtrl8.Model.Text
mycell8 = oSheet.getCellRangeByName("E17")
mycell8.string=MyText8
MyCtrl1111= dlg.getControl("TextField1111")
MyText1111 = MyCtrl1111.Model.Text
mycell1111 = oSheet.getCellRangeByName("F1")
mycell1111.string=MyText1111
End Sub
und in die Bibliothek " Meine Makros" musste ich die Codes schreiben für die Buttons ( Speichern, Drucken) auf den Sheets und noch ein paar Variablen als global definieren.
Code: Alles auswählen
global dlg as Object
global odialog as Object
global Dlg as Object
global oDialog as Object
global oDoc as Object
global oSheet as Object
global mySheet as Object
global Doc as Object
Sub GlobaleVariablen
end Sub
Sub SpeichernOfferte1seitig
Dim oDoc As Object
Dim oSheet As Object
Dim oCell1 As Object
Dim oCell2 As Object
Dim oCell3 As Object
Dim oCell4 As Object
Dim sName As String
Dim sVorname As String
Dim sLaufwerk As String
Dim sDirname As String
Dim sFilename as String
Dim DatabaseContext as Object
Dim oDataquelle as Object
Dim oDatVerb as Object
Dim oStatement as Object
Dim sSQL as String
Dim sID as String
Dim dummy()
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("Offerte1seitig")
oCell1 = oSheet.getCellByPosition(3, 0)
sName = oCell1.String
oCell2 = oSheet.getCellByPosition(2, 0)
sVorname = oCell2.String
oCell3 = oSheet.getCellByPosition(4, 0)
sNummer= oCell3.String
oCell4 = oSheet.getCellByPosition(4, 1)
sID= oCell4.String
sLaufwerk = "C:/Users/Dave/Desktop/Kunden/"
sDirname = sName & " " & sVorname
sFilename = sNummer & " " & sName & " " & sVorname
neuerpfad = sLaufwerk + "/" + sDirname + "/" + sFilename + ".ods"
dateiurl=converttourl(neuerpfad)
odoc.storetourl(dateiurl,dummy())
if oSheet.getcellbyposition(0 ,11).string = "Offerte" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Offerten"" (""KundenID"", ""Offerten"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Auftragsbestätigung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Aufträge"" (""KundenID"", ""Aufträge"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Rechnung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Rechnungen"" (""KundenID"", ""Rechnungen"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
end Sub
Sub SpeichernOfferte
Dim oDoc As Object
Dim oSheet As Object
Dim oCell1 As Object
Dim oCell2 As Object
Dim oCell3 As Object
Dim sName As String
Dim sVorname As String
Dim sLaufwerk As String
Dim sDirname As String
Dim sFilename as String
Dim DatabaseContext as Object
Dim oDataquelle as Object
Dim oDatVerb as Object
Dim oStatement as Object
Dim sSQL as String
Dim sID as String
Dim dummy()
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("Offerte")
'Falls der Name in einer Zelle abgelegt wurde:
oCell1 = oSheet.getCellByPosition(3, 0) 'Tabellenfeld, in dem der Name steht
sName = oCell1.String
oCell2 = oSheet.getCellByPosition(2, 0) 'Tabellenfeld, in dem der Vorname steht
sVorname = oCell2.String
oCell3 = oSheet.getCellByPosition(1,13) 'Tabellenfeld, in dem das Geburtsdatum steht (Format TT.MM.JJJJ)
sNummer= oCell3.String
oCell4 = oSheet.getCellByPosition(4, 1)
sID= oCell4.String
sLaufwerk = "C:/Users/Dave/Desktop/Kunden/"
sDirname = sName & " " & sVorname
sFilename = sNummer & " " & sName & " " & sVorname
neuerpfad = sLaufwerk + "/" + sDirname + "/" + sFilename + ".ods"
dateiurl=converttourl(neuerpfad)
odoc.storetourl(dateiurl,dummy())
if oSheet.getcellbyposition(0 ,11).string = "Offerte" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Offerten"" (""KundenID"", ""Offerten"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Auftragsbestätigung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Aufträge"" (""KundenID"", ""Aufträge"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
end Sub
Sub SpeichernOfferte15seitig
Dim oDoc As Object
Dim oSheet As Object
Dim oCell1 As Object
Dim oCell2 As Object
Dim oCell3 As Object
Dim sName As String
Dim sVorname As String
Dim sLaufwerk As String
Dim sDirname As String
Dim sFilename as String
Dim DatabaseContext as Object
Dim oDataquelle as Object
Dim oDatVerb as Object
Dim oStatement as Object
Dim sSQL as String
Dim sID as String
Dim dummy()
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("Offerte15seitig")
'Falls der Name in einer Zelle abgelegt wurde:
oCell1 = oSheet.getCellByPosition(3, 0) 'Tabellenfeld, in dem der Name steht
sName = oCell1.String
oCell2 = oSheet.getCellByPosition(2, 0) 'Tabellenfeld, in dem der Vorname steht
sVorname = oCell2.String
oCell3 = oSheet.getCellByPosition(4, 0) 'Tabellenfeld, in dem das Geburtsdatum steht (Format TT.MM.JJJJ)
sNummer= oCell3.String
oCell4 = oSheet.getCellByPosition(4, 1)
sID= oCell4.String
sLaufwerk = "C:/Users/Dave/Desktop/Kunden/"
sDirname = sName & " " & sVorname
sFilename = sNummer & " " & sName & " " & sVorname
neuerpfad = sLaufwerk + "/" + sDirname + "/" + sFilename + ".ods"
dateiurl=converttourl(neuerpfad)
odoc.storetourl(dateiurl,dummy())
if oSheet.getcellbyposition(0 ,11).string = "Offerte" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Offerten"" (""KundenID"", ""Offerten"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Auftragsbestätigung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Aufträge"" (""KundenID"", ""Aufträge"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Rechnung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Rechnungen"" (""KundenID"", ""Rechnungen"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
end Sub
Sub SpeichernOfferte25seitig
Dim oDoc As Object
Dim oSheet As Object
Dim oCell1 As Object
Dim oCell2 As Object
Dim oCell3 As Object
Dim sName As String
Dim sVorname As String
Dim sLaufwerk As String
Dim sDirname As String
Dim sFilename as String
Dim DatabaseContext as Object
Dim oDataquelle as Object
Dim oDatVerb as Object
Dim oStatement as Object
Dim sSQL as String
Dim sID as String
Dim dummy()
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("Offerte25seitig")
'Falls der Name in einer Zelle abgelegt wurde:
oCell1 = oSheet.getCellByPosition(3, 0) 'Tabellenfeld, in dem der Name steht
sName = oCell1.String
oCell2 = oSheet.getCellByPosition(2, 0) 'Tabellenfeld, in dem der Vorname steht
sVorname = oCell2.String
oCell3 = oSheet.getCellByPosition(4, 0) 'Tabellenfeld, in dem das Geburtsdatum steht (Format TT.MM.JJJJ)
sNummer= oCell3.String
oCell4 = oSheet.getCellByPosition(4, 1)
sID= oCell4.String
sLaufwerk = "C:/Users/Dave/Desktop/Kunden/"
sDirname = sName & " " & sVorname
sFilename = sNummer & " " & sName & " " & sVorname
neuerpfad = sLaufwerk + "/" + sDirname + "/" + sFilename + ".ods"
dateiurl=converttourl(neuerpfad)
odoc.storetourl(dateiurl,dummy())
if oSheet.getcellbyposition(0 ,11).string = "Offerte" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Offerten"" (""KundenID"", ""Offerten"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Auftragsbestätigung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Aufträge"" (""KundenID"", ""Aufträge"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Rechnung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Rechnungen"" (""KundenID"", ""Rechnungen"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
end Sub
Sub SpeichernOfferte35seitig
Dim oDoc As Object
Dim oSheet As Object
Dim oCell1 As Object
Dim oCell2 As Object
Dim oCell3 As Object
Dim sName As String
Dim sVorname As String
Dim sLaufwerk As String
Dim sDirname As String
Dim sFilename as String
Dim DatabaseContext as Object
Dim oDataquelle as Object
Dim oDatVerb as Object
Dim oStatement as Object
Dim sSQL as String
Dim sID as String
Dim dummy()
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("Offerte35seitig")
'Falls der Name in einer Zelle abgelegt wurde:
oCell1 = oSheet.getCellByPosition(3, 0) 'Tabellenfeld, in dem der Name steht
sName = oCell1.String
oCell2 = oSheet.getCellByPosition(2, 0) 'Tabellenfeld, in dem der Vorname steht
sVorname = oCell2.String
oCell3 = oSheet.getCellByPosition(4, 0) 'Tabellenfeld, in dem das Geburtsdatum steht (Format TT.MM.JJJJ)
sNummer= oCell3.String
oCell4 = oSheet.getCellByPosition(4, 1)
sID= oCell4.String
sLaufwerk = "C:/Users/Dave/Desktop/Kunden/"
sDirname = sName & " " & sVorname
sFilename = sNummer & " " & sName & " " & sVorname
neuerpfad = sLaufwerk + "/" + sDirname + "/" + sFilename + ".ods"
dateiurl=converttourl(neuerpfad)
odoc.storetourl(dateiurl,dummy())
if oSheet.getcellbyposition(0 ,11).string = "Offerte" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Offerten"" (""KundenID"", ""Offerten"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Auftragsbestätigung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Aufträge"" (""KundenID"", ""Aufträge"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Rechnung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Rechnungen"" (""KundenID"", ""Rechnungen"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
end Sub
Sub SpeichernOfferte05seitig
Dim oDoc As Object
Dim oSheet As Object
Dim oCell1 As Object
Dim oCell2 As Object
Dim oCell3 As Object
Dim sName As String
Dim sVorname As String
Dim sLaufwerk As String
Dim sDirname As String
Dim sFilename as String
Dim DatabaseContext as Object
Dim oDataquelle as Object
Dim oDatVerb as Object
Dim oStatement as Object
Dim sSQL as String
Dim sID as String
Dim dummy()
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("Offerte05seitig")
'Falls der Name in einer Zelle abgelegt wurde:
oCell1 = oSheet.getCellByPosition(3, 0) 'Tabellenfeld, in dem der Name steht
sName = oCell1.String
oCell2 = oSheet.getCellByPosition(2, 0) 'Tabellenfeld, in dem der Vorname steht
sVorname = oCell2.String
oCell3 = oSheet.getCellByPosition(4, 0) 'Tabellenfeld, in dem das Geburtsdatum steht (Format TT.MM.JJJJ)
sNummer= oCell3.String
oCell4 = oSheet.getCellByPosition(4, 1)
sID= oCell4.String
sLaufwerk = "C:/Users/Dave/Desktop/Kunden/"
sDirname = sName & " " & sVorname
sFilename = sNummer & " " & sName & " " & sVorname
neuerpfad = sLaufwerk + "/" + sDirname + "/" + sFilename + ".ods"
dateiurl=converttourl(neuerpfad)
odoc.storetourl(dateiurl,dummy())
if oSheet.getcellbyposition(0 ,11).string = "Offerte" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Offerten"" (""KundenID"", ""Offerten"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Auftragsbestätigung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Aufträge"" (""KundenID"", ""Aufträge"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Rechnung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Rechnungen"" (""KundenID"", ""Rechnungen"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
end Sub
Sub SpeichernAkonto
Dim oDoc As Object
Dim oSheet As Object
Dim oCell1 As Object
Dim oCell2 As Object
Dim oCell3 As Object
Dim sName As String
Dim sVorname As String
Dim sLaufwerk As String
Dim sDirname As String
Dim sFilename as String
Dim DatabaseContext as Object
Dim oDataquelle as Object
Dim oDatVerb as Object
Dim oStatement as Object
Dim sSQL as String
Dim sID as String
Dim dummy()
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("Akonto")
'Falls der Name in einer Zelle abgelegt wurde:
oCell1 = oSheet.getCellByPosition(3, 0) 'Tabellenfeld, in dem der Name steht
sName = oCell1.String
oCell2 = oSheet.getCellByPosition(2, 0) 'Tabellenfeld, in dem der Vorname steht
sVorname = oCell2.String
oCell3 = oSheet.getCellByPosition(4, 0) 'Tabellenfeld, in dem das Geburtsdatum steht (Format TT.MM.JJJJ)
sNummer= oCell3.String
oCell4 = oSheet.getCellByPosition(4, 1)
sID= oCell4.String
sLaufwerk = "C:/Users/Dave/Desktop/Kunden/"
sDirname = sName & " " & sVorname
Filename = "RG" & " " & sNummer & " " & sName & " " & sVorname
neuerpfad = sLaufwerk + "/" + sDirname + "/" + sFilename + ".ods"
dateiurl=converttourl(neuerpfad)
odoc.storetourl(dateiurl,dummy())
if oSheet.getcellbyposition(0 ,11).string = "1.Akonto" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Rechnungen"" (""KundenID"", ""Rechnungen"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "2.Akonto" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Rechnungen"" (""KundenID"", ""Rechnungen"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
if oSheet.getcellbyposition(0 ,11).string = "Schlussrechnung" then
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Rechnungen"" (""KundenID"", ""Rechnungen"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end if
end Sub
Sub SpeichernRG1SmV
Dim oDoc As Object
Dim oSheet As Object
Dim oCell1 As Object
Dim oCell2 As Object
Dim oCell3 As Object
Dim sName As String
Dim sVorname As String
Dim sLaufwerk As String
Dim sDirname As String
Dim sFilename as String
Dim DatabaseContext as Object
Dim oDataquelle as Object
Dim oDatVerb as Object
Dim oStatement as Object
Dim sSQL as String
Dim sID as String
Dim dummy()
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("RG1SmV")
'Falls der Name in einer Zelle abgelegt wurde:
oCell1 = oSheet.getCellByPosition(3, 0) 'Tabellenfeld, in dem der Name steht
sName = oCell1.String
oCell2 = oSheet.getCellByPosition(2, 0) 'Tabellenfeld, in dem der Vorname steht
sVorname = oCell2.String
oCell3 = oSheet.getCellByPosition(4, 0) 'Tabellenfeld, in dem das Geburtsdatum steht (Format TT.MM.JJJJ)
sNummer= oCell3.String
oCell4 = oSheet.getCellByPosition(4, 1)
sID= oCell4.String
sLaufwerk = "C:/Users/Dave/Desktop/Kunden/"
sDirname = sName & " " & sVorname
sFilename = sNummer & " " & sName & " " & sVorname
neuerpfad = sLaufwerk + "/" + sDirname + "/" + sFilename + ".ods"
dateiurl=converttourl(neuerpfad)
odoc.storetourl(dateiurl,dummy())
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Rechnungen"" (""KundenID"", ""Rechnungen"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end Sub
Sub SpeichernRG1SoV
Dim oDoc As Object
Dim oSheet As Object
Dim oCell1 As Object
Dim oCell2 As Object
Dim oCell3 As Object
Dim sName As String
Dim sVorname As String
Dim sLaufwerk As String
Dim sDirname As String
Dim sFilename as String
Dim DatabaseContext as Object
Dim oDataquelle as Object
Dim oDatVerb as Object
Dim oStatement as Object
Dim sSQL as String
Dim sID as String
Dim dummy()
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("RG1SoV")
'Falls der Name in einer Zelle abgelegt wurde:
oCell1 = oSheet.getCellByPosition(3, 0) 'Tabellenfeld, in dem der Name steht
sName = oCell1.String
oCell2 = oSheet.getCellByPosition(2, 0) 'Tabellenfeld, in dem der Vorname steht
sVorname = oCell2.String
oCell3 = oSheet.getCellByPosition(1, 13) 'Tabellenfeld, in dem das Geburtsdatum steht (Format TT.MM.JJJJ)
sNummer= oCell3.String
oCell4 = oSheet.getCellByPosition(4, 1)
sID= oCell4.String
sLaufwerk = "C:/Users/Dave/Desktop/Kunden/"
sDirname = sName & " " & sVorname
sFilename = sNummer & " " & sName & " " & sVorname
neuerpfad = sLaufwerk + "/" + sDirname + "/" + sFilename + ".ods"
dateiurl=converttourl(neuerpfad)
odoc.storetourl(dateiurl,dummy())
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Rechnungen"" (""KundenID"", ""Rechnungen"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end Sub
Sub SpeichernLieferschein
Dim oDoc As Object
Dim oSheet As Object
Dim oCell1 As Object
Dim oCell2 As Object
Dim oCell3 As Object
Dim sName As String
Dim sVorname As String
Dim sLaufwerk As String
Dim sDirname As String
Dim sFilename as String
Dim DatabaseContext as Object
Dim oDataquelle as Object
Dim oDatVerb as Object
Dim oStatement as Object
Dim sSQL as String
Dim sID as String
Dim dummy()
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("Lieferschein")
'Falls der Name in einer Zelle abgelegt wurde:
oCell1 = oSheet.getCellByPosition(3, 0) 'Tabellenfeld, in dem der Name steht
sName = oCell1.String
oCell2 = oSheet.getCellByPosition(2, 0) 'Tabellenfeld, in dem der Vorname steht
sVorname = oCell2.String
oCell3 = oSheet.getCellByPosition(4, 0) 'Tabellenfeld, in dem das Geburtsdatum steht (Format TT.MM.JJJJ)
sNummer= oCell3.String
oCell4 = oSheet.getCellByPosition(4, 1)
sID= oCell4.String
sLaufwerk = "C:/Users/Dave/Desktop/Kunden/"
sDirname = sName & " " & sVorname
sFilename = sNummer & " " & sName & " " & sVorname
neuerpfad = sLaufwerk + "/" + sDirname + "/" + sFilename + ".ods"
dateiurl=converttourl(neuerpfad)
odoc.storetourl(dateiurl,dummy())
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
oDatenquelle = DatabaseContext.getByName("wellmo nur Dave")
oDatVerb = oDatenquelle.getConnection("","")
oStatement = oDatVerb.createStatement()
sSQL = "INSERT INTO ""Lieferscheine"" (""KundenID"", ""Lieferscheine"", ""Datum"") VALUES ('"+sID+"','"+sFilename+"', now)"
oStatement.executeUpdate(sSQL)
end Sub
Sub DruckenOfferte
Dim CellrangeAddress AS New com.sun.star.table.CellRangeAddress
Dim args(0)
Doc = ThisComponent
Sheet = Doc.Sheets(1)
Cellrangeaddress.Sheet = 1
Cellrangeaddress.StartColumn = 0
Cellrangeaddress.Startrow = 0
Cellrangeaddress.EndColumn = 5
Cellrangeaddress.EndRow = 184
args(0) = Cellrangeaddress
Sheet.setPrintAreas(args())
dim printProp(1) as new com.sun.star.beans.PropertyValue
printProp(0).name = "Wait"
printProp(0).Value = true
printProp(1).name = "CopyCount"
printProp(1).Value = 2
Doc.print(printProp())
end Sub
Sub DruckenOfferte1seitig
Dim CellrangeAddress AS New com.sun.star.table.CellRangeAddress
Dim args(0)
Doc = ThisComponent
Sheet = Doc.Sheets(42)
Cellrangeaddress.Sheet = 42
Cellrangeaddress.StartColumn = 0
Cellrangeaddress.Startrow = 0
Cellrangeaddress.EndColumn = 5
Cellrangeaddress.EndRow = 90
args(0) = Cellrangeaddress
Sheet.setPrintAreas(args())
dim printProp(1) as new com.sun.star.beans.PropertyValue
printProp(0).name = "Wait"
printProp(0).Value = true
printProp(1).name = "CopyCount"
printProp(1).Value = 2
Doc.print(printProp())
end Sub
Sub DruckenOfferte15seitig
Dim CellrangeAddress AS New com.sun.star.table.CellRangeAddress
Dim args(0)
Doc = ThisComponent
Sheet = Doc.Sheets(45)
Cellrangeaddress.Sheet = 45
Cellrangeaddress.StartColumn = 0
Cellrangeaddress.Startrow = 0
Cellrangeaddress.EndColumn = 5
Cellrangeaddress.EndRow = 108
args(0) = Cellrangeaddress
Sheet.setPrintAreas(args())
dim printProp(1) as new com.sun.star.beans.PropertyValue
printProp(0).name = "Wait"
printProp(0).Value = true
printProp(1).name = "CopyCount"
printProp(1).Value = 2
Doc.print(printProp())
end Sub
Sub DruckenOfferte25seitig
Dim CellrangeAddress AS New com.sun.star.table.CellRangeAddress
Dim args(0)
Doc = ThisComponent
Sheet = Doc.Sheets(46)
Cellrangeaddress.Sheet = 46
Cellrangeaddress.StartColumn = 0
Cellrangeaddress.Startrow = 0
Cellrangeaddress.EndColumn = 5
Cellrangeaddress.EndRow = 163
args(0) = Cellrangeaddress
Sheet.setPrintAreas(args())
dim printProp(1) as new com.sun.star.beans.PropertyValue
printProp(0).name = "Wait"
printProp(0).Value = true
printProp(1).name = "CopyCount"
printProp(1).Value = 2
Doc.print(printProp())
end Sub
Sub DruckenOfferte35seitig
Dim CellrangeAddress AS New com.sun.star.table.CellRangeAddress
Dim args(0)
Doc = ThisComponent
Sheet = Doc.Sheets(47)
Cellrangeaddress.Sheet = 47
Cellrangeaddress.StartColumn = 0
Cellrangeaddress.Startrow = 0
Cellrangeaddress.EndColumn = 5
Cellrangeaddress.EndRow = 219
args(0) = Cellrangeaddress
Sheet.setPrintAreas(args())
dim printProp(1) as new com.sun.star.beans.PropertyValue
printProp(0).name = "Wait"
printProp(0).Value = true
printProp(1).name = "CopyCount"
printProp(1).Value = 2
Doc.print(printProp())
end Sub
Sub DruckenOfferte05seitig
Dim CellrangeAddress AS New com.sun.star.table.CellRangeAddress
Dim args(0)
Doc = ThisComponent
Sheet = Doc.Sheets(49)
Cellrangeaddress.Sheet = 49
Cellrangeaddress.StartColumn = 0
Cellrangeaddress.Startrow = 0
Cellrangeaddress.EndColumn = 5
Cellrangeaddress.EndRow = 54
args(0) = Cellrangeaddress
Sheet.setPrintAreas(args())
dim printProp(1) as new com.sun.star.beans.PropertyValue
printProp(0).name = "Wait"
printProp(0).Value = true
printProp(1).name = "CopyCount"
printProp(1).Value = 2
Doc.print(printProp())
end Sub
Sub DruckenRGS1mV
Dim CellrangeAddress AS New com.sun.star.table.CellRangeAddress
Dim args(0)
Doc = ThisComponent
Sheet = Doc.Sheets(43)
Cellrangeaddress.Sheet = 43
Cellrangeaddress.StartColumn = 0
Cellrangeaddress.Startrow = 0
Cellrangeaddress.EndColumn = 5
Cellrangeaddress.EndRow = 53
args(0) = Cellrangeaddress
Sheet.setPrintAreas(args())
dim printProp(1) as new com.sun.star.beans.PropertyValue
printProp(0).name = "Wait"
printProp(0).Value = true
printProp(1).name = "CopyCount"
printProp(1).Value = 2
Doc.print(printProp())
end Sub
Sub DruckenRGS1oV
Dim CellrangeAddress AS New com.sun.star.table.CellRangeAddress
Dim args(0)
Doc = ThisComponent
Sheet = Doc.Sheets(44)
Cellrangeaddress.Sheet = 44
Cellrangeaddress.StartColumn = 0
Cellrangeaddress.Startrow = 0
Cellrangeaddress.EndColumn = 5
Cellrangeaddress.EndRow = 53
args(0) = Cellrangeaddress
Sheet.setPrintAreas(args())
dim printProp(1) as new com.sun.star.beans.PropertyValue
printProp(0).name = "Wait"
printProp(0).Value = true
printProp(1).name = "CopyCount"
printProp(1).Value = 2
Doc.print(printProp())
end Sub
Sub DruckenAkonto
Dim CellrangeAddress AS New com.sun.star.table.CellRangeAddress
Dim args(0)
Doc = ThisComponent
Sheet = Doc.Sheets(48)
Cellrangeaddress.Sheet = 48
Cellrangeaddress.StartColumn = 0
Cellrangeaddress.Startrow = 0
Cellrangeaddress.EndColumn = 5
Cellrangeaddress.EndRow = 53
args(0) = Cellrangeaddress
Sheet.setPrintAreas(args())
dim printProp(1) as new com.sun.star.beans.PropertyValue
printProp(0).name = "Wait"
printProp(0).Value = true
printProp(1).name = "CopyCount"
printProp(1).Value = 2
Doc.print(printProp())
end Sub
Sub DruckenLieferschein
Dim CellrangeAddress AS New com.sun.star.table.CellRangeAddress
Dim args(0)
Doc = ThisComponent
Sheet = Doc.Sheets(50)
Cellrangeaddress.Sheet = 50
Cellrangeaddress.StartColumn = 0
Cellrangeaddress.Startrow = 0
Cellrangeaddress.EndColumn = 5
Cellrangeaddress.EndRow = 55
args(0) = Cellrangeaddress
Sheet.setPrintAreas(args())
dim printProp(1) as new com.sun.star.beans.PropertyValue
printProp(0).name = "Wait"
printProp(0).Value = true
printProp(1).name = "CopyCount"
printProp(1).Value = 2
Doc.print(printProp())
end Sub
Sub Tabellenwechsel(quelle)
x = quelle.Source.Model.Label
blatt = ThisComponent.Sheets().getByName(x)
ThisComponent.CurrentController.setActiveSheet(blatt)
End Sub
Somit funktioniert alles wie es muss und soll, ich bin Happy und Danke euch allen nochmals für die Hilfe. Evtl. kann man ja den einten oder anderen Code nun auch von mir abgucken

Das einzige was schade ist, das man die Codes aus "Meine Makros" mit "REM" in die Dokumenten-Bibliothek kopieren muss, damit man es auf anderen Rechnern auch zum laufen bringt.
Ich habe beide Dateien nochmals hochgeladen. Damit Sie funktionieren muss man in der Bibliothek "Meine Makros" ein Modul Namens "Global" machen und den markierten Code in der Bibliothek "wellmo nur Dave" im Modul1 dort reinkopieren.
Ich hoffe jmd kann etwas damit, oder einem Teil davon, anfangen und ich kann somit auch wem behilflich sein.
Gruss Dave