Scripte

Fehlerberichte, Hilfe und Anregungen zu BasicMaker 2016 für Windows

Moderator: SoftMaker Team

Antworten
PeterQ
SoftMaker Volunteers
SoftMaker Volunteers
Beiträge: 1581
Registriert: 09.03.2009 17:32:30
Kontaktdaten:

Scripte

Beitrag von PeterQ » 09.10.2017 20:12:00

Da Get jetzt seinen eigenes Script eingestellt hat, bleibt jetzt hier nur die Vorrede.
Dieser Thread kann alle Scripte sammeln, die auch für andere einen Nutzen haben können.
Möge die Moderation diesen Thread oben anheften.
Zuletzt geändert von PeterQ am 13.10.2017 20:14:10, insgesamt 1-mal geändert.
(1) SMO 2018 Beta - OpenSuse 42.2 64 bit KDE Plasma 5.8.6
(2) SMO 2018 - WINE 32 bit in OpenSuse 42.2 64 bit
(3) SMO 2016 - Windows 7 32 bit

PeterQ
SoftMaker Volunteers
SoftMaker Volunteers
Beiträge: 1581
Registriert: 09.03.2009 17:32:30
Kontaktdaten:

Scripte: Rechnung mit fortlaufender Nummer

Beitrag von PeterQ » 12.10.2017 12:34:14

Rechnung mit fortlaufender Nummer:

Code: Alles auswählen

Sub GlobalNumbering
   Dim tm As Object

   Set tm = CreateObject("TextMaker.Application")
   If tm.Documents.Count = 0 Then
      MsgBox "Sie haben kein Dokument geöffnet!"
      Stop
   End If

tm.ActiveDocument.Selection.GoTo tmGoToTable, tmGoToAbsolute, 1, 1, 3

   Open "c:\Rechnung\Rechnungsnummer.txt" For Input As #1
   Input #1, num
   Close #1

   tm.ActiveDocument.Selection.TypeText Str(num)
   num = num + 1

   Open "c:\Rechnung\Rechnungsnummer.txt" For Output As #1
   Print #1, num
   Close #1


' Da zum Speichern die erste Zeile des Dokumentes vorgeschlagen wird:
' Kopiere den Tabelleninhalt in die erste Zeile

With tm.ActiveDocument
  .Selection.SetRange .Paragraphs(15).Range.Start, .Paragraphs(15).Range.End
End With
tm.ActiveDocument.Selection.Copy
' in die erste Zeile einfgen
tm.ActiveDocument.Selection.GoTo tmGoToParagraph, tmGoToAbsolute, 1
tm.ActiveDocument.Selection.Paste

With tm.ActiveDocument
  .Selection.SetRange .Paragraphs(17).Range.Start, .Paragraphs(17).Range.End
End With
tm.ActiveDocument.Selection.Copy
' nach dem 8. Zeichen  einfgen
tm.ActiveDocument.Selection.SetRange 8, 8
tm.ActiveDocument.Selection.Paste

With tm.ActiveDocument
  .Selection.SetRange .Paragraphs(19).Range.Start, .Paragraphs(19).Range.End
End With
tm.ActiveDocument.Selection.Copy
' nach dem 14 Zeichen einfügen
tm.ActiveDocument.Selection.SetRange 11, 11
tm.ActiveDocument.Selection.Paste

tm.ActiveDocument.Selection.GoTo tmGoToParagraph, tmGoToAbsolute, 1

' Dokument speichern
tm.ActiveDocument.Save



'Rechnungsnummer duplizieren, um die Tabelle als Text zu ersetzen
With tm.ActiveDocument
  .Selection.SetRange .Paragraphs(1).Range.Start, .Paragraphs(1).Range.End
End With
tm.ActiveDocument.Selection.Copy

tm.ActiveDocument.Selection.GoTo tmGoToParagraph, tmGoToAbsolute, 21
tm.ActiveDocument.Selection.Paste


' erste 3 Zeilen wieder löschen
With tm.ActiveDocument
  .Selection.SetRange .Paragraphs(1).Range.Start, .Paragraphs(3).Range.End
End With
tm.ActiveDocument.Selection.Delete


' Tabelle löschen
' Die erste Tabelle des Dokuments in Text wandeln
tm.ActiveDocument.Tables.Item(1).ConvertToText

' Tabellenzeile löschen
With tm.ActiveDocument
  .Selection.SetRange .Paragraphs(15).Range.Start, .Paragraphs(15).Range.End
End With
tm.ActiveDocument.Selection.Delete

   Set tm = Nothing
End Sub
Die Anleitung dazu:
Einen Ordner „Rechnung“ in C anlegen (oder selbstgewählt- dann muss aber das BasicMaker-Script angepasst werden.)
Die Datei „Rechnung mit Nummer.tmv“ in das Vorlageverzeichnis von SoftMaker kopieren.
Die Datei „Rechnungsnummer.txt“ in den Ordner „Rechnung“ kopieren.
Die Datei „Rechnung.bas“ in den Ordner „Rechnung“ kopieren.
Symbolleiste von TextMaker anpassen, indem ein benutzerdefinerter Button angelegt wird.
Befehlszeile mit "C:\Programme\SoftMaker Office 2016\BasicMaker.exe" /s "C:\Rechnung\Rechnung.bas"
ausfüllen. Als Symbol kann „NR.ico“ gewählt werden.
Die Rechnungsvorlage "Rechnung mit Nummer.tmv" öffnen.
Wenn eine neue Rechnungsnummer vergeben werden soll, dann den Button drücken
Rechnung mit Nummer.tmv
(29.5 KiB) 8-mal heruntergeladen
Rechnung.bas
(2.35 KiB) 7-mal heruntergeladen
NR.png
muss noch in .ico umgewandelt werden
NR.png (462 Bytes) 253 mal betrachtet
Möge die Moderation diesen Thread oben anheften. Alle anderen sind auch eingeladen, ihre Scripte hier vorzustellen.
Zuletzt geändert von PeterQ am 13.10.2017 20:15:43, insgesamt 3-mal geändert.
(1) SMO 2018 Beta - OpenSuse 42.2 64 bit KDE Plasma 5.8.6
(2) SMO 2018 - WINE 32 bit in OpenSuse 42.2 64 bit
(3) SMO 2016 - Windows 7 32 bit

Benutzeravatar
Get
Beiträge: 103
Registriert: 08.12.2014 13:39:39
Kontaktdaten:

Skript zur Recherche im Internet

Beitrag von Get » 12.10.2017 21:02:38

Vor langer Zeit habe ich das mal geschrieben. Es geht so:
In Textmaker einen Text markieren, das Skript starten.
Es kommt eine Auswahlbox, in der man folgendes wählen kann:
Suche den markierten Text in Google, in Wikipedia, in Grimms Wörterbuch, im Langenscheid Übersetzter (man kann die Sprache auswählen), oder im Softmaker Forum.
Das Skript heißt "internet.bas". Man muss nur den Pfad zu seinem eigenen Browswr anpassen.
Dateianhänge
internet.bas
(3.67 KiB) 7-mal heruntergeladen

Benutzeravatar
Get
Beiträge: 103
Registriert: 08.12.2014 13:39:39
Kontaktdaten:

Re: Scripte: Printsel

Beitrag von Get » 12.10.2017 21:14:59

Die letzte Überarbeitung, damit das Drucken auch mit einem einzigen Mausklick klappt:

Code: Alles auswählen

Sub printsel()

	Dim tm as Object
	Dim docName, pfad as String
	Set tm = CreateObject("TextMaker.Application")
	tm.Visible = TRUE
	pfad = tm.Application.Options.DefaultTemplatePath
	docName = pfad & "\printsel-kopie.tmd"
	tm.ActiveDocument.Selection.Copy
	tm.Documents.Open docName
	'tm.ActiveDocument.Save
	tm.ActiveDocument.Selection.Paste
	tm.ActiveDocument.PrintOut
	tm.ActiveDocument.Close smoDoNotSaveChanges
	Set tm = Nothing

End Sub
Wichtig: eine leere Datei "printsel-kopie.tmd" im Softmaker Template-Verzeichnis anlegen, dann hat man Ruhe.
Ob der Befehl Tm.ActiveDocument.Save gebraucht wird, kann man ausprobieren. Nötig ist er bei mir nicht.
Viel Spaß

P.S.
Ich werde hier mal in kürze eine Anleitung posten, wei man seine Basic-Skripte auf einen Userbutton legt, damit das auch wirklich mit einem Mausklick läuft.

Benutzeravatar
Get
Beiträge: 103
Registriert: 08.12.2014 13:39:39
Kontaktdaten:

UserButtons

Beitrag von Get » 12.10.2017 21:38:19

Userbutton für Basic Skripte

Die UserButtons für Textmaker 16 werden immer in der Datei »tmw16config.ini« im Verzeichnis »Dokumente\Softmaker\Settings« gelistet,
wobei tmd16 bei Bedarf für die anderen SM Programme geändert wird.

Die UserButtons beginnen bei meiner tmd16.config hinter der Zeile mit Zeile »winprn=......
Jeder Button hat folgende Einträge:

Code: Alles auswählen

[UserButton6]
Exepath=basicmaker /s c:\users\USERNAME\documents\softmaker\SKRIPTVERZEICNIS\printsel.bas
Text=Auswahl drucken
Iconfile=C:\Users\USERNAME\Documents\SoftMaker\SCRIPTVERZEICHNIS\printsel.ico
Die Nummer des Buttons, der Username und das Skriptverzeichnis muss man natürlich anpassen.
Dann sichert man die Datei ...config.ini, ruft Textmaker auf, klickt Rechts in die Symbolleiste, in der der Button erscheinen soll.
In der Auswahlbox wählt man in der linken Spalte »Benutzer« und schiebt dann mit gedrückter rechter Maustaste aus der rechten Spalte das gewünschte (und in der config definierte!) Icon an eine passende Stelle in der Symbolleiste. Fertig

Wer keine eigenen Icons erstellen kann oder will, nimmt halt einen der vorhandenenUserButtons mit einer Zahl.

Benutzeravatar
Get
Beiträge: 103
Registriert: 08.12.2014 13:39:39
Kontaktdaten:

Re: Scripte: Vorschlag

Beitrag von Get » 13.10.2017 20:06:32

Hallo,
wer hier ein Skript einstellt, der sollte beim Antworten im Betreff nach Skripte das Thema/den Zweck des Skripts nennen, sonst findet man das nur schwer.

Antworten

Zurück zu „BasicMaker 2016 für Windows“