FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 
smartsuitefaq.martinholz.de Foren-Übersicht

Makro-Erstellung mit 9.7

 
Neues Thema eröffnen   Neue Antwort erstellen    smartsuitefaq.martinholz.de Foren-Übersicht -> 1-2-3
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Hansmartin
Neuer User


Anmeldungsdatum: 04.03.2008
Beiträge: 7
Wohnort: Sulzbach/Saar

BeitragVerfasst am: Mi 05.03.2008 19:18    Titel: Makro-Erstellung mit 9.7 Antworten mit Zitat

wo gibt es auch für Nicht-Programmierer Hilfe bei der Erstellung von Makros?

Bei 1-2-3 V. 5 bin ich irgendwann dahinter gestiegen. Die wk4-Dateien nutze ich heute noch.

Ich will Sortierungen mit in Schaltflächen verknüpften Makros vornehmen und konnte das in wk4-Dateien realisieren.

Wie kann ich das mit 9.7 erreichen - mit den Scripts komme ich nicht weiter.

Ist die Frage konkret genug oder soll ich meine Datei einmal zum Experimentieren zur Verfügung stellen?

Vielen Dank für Anregungen.

Hansmartin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Martin
Site Admin


Anmeldungsdatum: 31.12.2004
Beiträge: 389
Wohnort: Düsseldorf

BeitragVerfasst am: Sa 08.03.2008 10:11    Titel: Antworten mit Zitat

Makros gibt es nicht mehr.
Stattdessen ist LotusScript das Mittel der Wahl.

Hier eine kleine Einführung in die Sortierung über Schaltflächen in 1-2-3:

Nehmen wir an Du hast folgende Tabelle:


Dann erstellst Du eine Schaltfläche (Text und Gestaltung nach eigenem Gusto). Beim Einfügen der Schaltfläche wird der ScriptEditor geöffnet.

Dort steht links oben der Name der Schaltfläche (Schaltfläche 1,2,3,...) und rechts daneben der auslösende Event (Ereignis). Der Event ist standardmäßig "Click" und wird ausgelöst, wenn man auf die Schaltfläche klickt - also genau unser Ding!

Nun muss etwas Script eingefügt werden.
Ich schlage zur Sortierung des o.a. Bereiches mal folgendes vor:
Code:
Sub Click(Source As Buttoncontrol)
   ' Zu sortierenden Bereich festlegen
   Dim Sortierbereich As range
   Set Sortierbereich = [A2..D7]
   
   ' Spalte festlegen anhand derer sortiert werden soll
   Dim Spalte_A As range
   Set Spalte_A = [A2..A7]
   
   ' Sortierung nach Spalte A starten ($Ascend = aufsteigend, $Descend = absteigend)
   CurrentDocument.SortResetKeys
   CurrentDocument.RangeSortDefineKey 0,Spalte_A,$Ascend
   Sortierbereich.Sort    
End Sub

Zuerst wird der zu sortierende Bereich festgelegt (Sortierbereich).
Dann folgt die Definition der Spalte anhand derer der Sortierbereich sortiert werden soll.
Letztendlich wird die Sortierung durchgeführt.

Nun zur zweiten Spalte. Auch hier erstellst Du eine Schaltfläche und änderst das o.a. Script in 2 Stellen ab:
Definition der Spalte nach der sortiert werden soll und die Abänderung des Sortieraufrufs. Der Sortierbereich bleibt gleich!
Das Script für die zweite Schaltfläche sollte dann so aussehen:

Code:
Sub Click(Source As Buttoncontrol)
   ' Zu sortierenden Bereich festlegen
   Dim Sortierbereich As range
   Set Sortierbereich = [A2..D7]
   
   ' Spalte festlegen anhand derer sortiert werden soll
   Dim Spalte_B As range
   Set Spalte_B = [B2..B7]
   
   ' Sortierung nach Spalte B starten ($Ascend = aufsteigend, $Descend = absteigend)
   CurrentDocument.SortResetKeys
   CurrentDocument.RangeSortDefineKey 0,Spalte_B,$Ascend
   Sortierbereich.Sort    
End Sub


Nun kannst Du nach Spalte A und Spalte B nach Herzenslust aufsteigend sortieren. Für eine Absteigende Sortierung ändere im Sortieraufruf die Konstante $Ascend zu $Descend.
_________________
FAQ gelesen?
=> http://smartsuitefaq.martinholz.de/


Zuletzt bearbeitet von Martin am Sa 08.03.2008 11:55, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden AIM-Name Yahoo Messenger MSN Messenger
Hansmartin
Neuer User


Anmeldungsdatum: 04.03.2008
Beiträge: 7
Wohnort: Sulzbach/Saar

BeitragVerfasst am: Sa 08.03.2008 11:46    Titel: Antworten mit Zitat

Vielen Dank für Deine Hilfe, Martin.

Damit wird es mir bestimmt demnächst gelingen. Natürlich funktionieren die wk4-Makros noch, aber ich habe bis heute den ersten Schritt zum Neuen noch nicht gewagt.

Sobald ich mein Ziel erreicht haben werde, werde ich Bescheid geben.

Noch einmal vielen Dank und große Anerkennung für Dein Engagement.

Hansmartin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Hansmartin
Neuer User


Anmeldungsdatum: 04.03.2008
Beiträge: 7
Wohnort: Sulzbach/Saar

BeitragVerfasst am: Mo 10.03.2008 10:09    Titel: Antworten mit Zitat

Hallo Martin,

die Lösung ist mit solch kompetenter Hilfe richtig einfach.

Vielen Dank noch einmal.

Hansmartin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Hansmartin
Neuer User


Anmeldungsdatum: 04.03.2008
Beiträge: 7
Wohnort: Sulzbach/Saar

BeitragVerfasst am: Mo 10.03.2008 12:24    Titel: Antworten mit Zitat

Hallo Martin,

wie ist das Script zu ändern, wenn ich die selbe Tabelle in einem Sortiervorgang nach mehreren Kriterien (Spalten) und diese wieder in einer bestimmten Reihenfolge sortieren will? Mit den Informationen in der Anwendung bin ich überfordert.

Sollte ich diese Frage besser in 1-2-3-Scripts stellen?

Vielen Dank für Deine Bemühungen im voraus.

Hansmartin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Martin
Site Admin


Anmeldungsdatum: 31.12.2004
Beiträge: 389
Wohnort: Düsseldorf

BeitragVerfasst am: Mi 12.03.2008 21:04    Titel: Antworten mit Zitat

Der "einfachste" weg die Scripte zu durchschauen, ist sie aufzuzeichnen, mit Breakpoints zu versehen und so schrittweise zu schauen was passiert.

Auch die von Dir gewünschte Sortierung kannst Du so sehr leicht realisieren.
Statt der festen Dateinamen (die werden dabei im Script eingefügt) verwendest Du wie oben "CurrentDocument" ... das ist dasselbe - mit dem Unterschied, dass Du die Datei umbenennen und woanders hin kopieren kannst.

Code:
CurrentDocument.RangeSortDefineKey 0,Spalte_A,$Ascend
CurrentDocument.RangeSortDefineKey 1,Spalte_B,$Ascend


Definiert die Sortierung zuerst über Spalte A aufsteigend und dann über Spalte B aufsteigend.

Gruß
Martin
_________________
FAQ gelesen?
=> http://smartsuitefaq.martinholz.de/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden AIM-Name Yahoo Messenger MSN Messenger
Hansmartin
Neuer User


Anmeldungsdatum: 04.03.2008
Beiträge: 7
Wohnort: Sulzbach/Saar

BeitragVerfasst am: Mi 12.03.2008 22:38    Titel: Antworten mit Zitat

Danke sehr für die prompte und kompetente Hilfe, Martin.
Bis alle Makros umgesetzt sein werden und ich evtl. neue Fragen haben werde, wird einige Zeit vergehen.

Deshalb schon jetzt ein frohes Osterfest für Dich und Deine Freunde und Familie.

Hansmartin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    smartsuitefaq.martinholz.de Foren-Übersicht -> 1-2-3 Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Protected by Anti-Spam ACP