zu einer Zelle und zurück springen (gelöst)

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: zu einer Zelle und zurück springen (gelöst)

Re: zu einer Zelle und zurüch springen

von clag » Mi, 21.10.2009 19:58

Hallo Charly,

konnte heute nicht früher deine Arbeit testen aber jetzt ist's top
Prima so funktioniert es ganz gut, für meinen jetzigen Einsatz ist es absolut ok
und eine erhebliche Erleichterung wenn man da fast 30 Tabellen hat ist man schon froh über so eine Funktion.

Ich stöbere schon ne ganze Weile in dem Basic Foren rum,
aber irgend wie liegt mir dies StarBasic nicht, Exel-Makros und dann VBA waren für mich verständlicher.

Also nochmal herzlichsten Dank für dein Hilfe und Bemühungen :D

und nen schönen Abend

Re: zu einer Zelle und zurüch springen

von Charly » Mi, 21.10.2009 10:28

Hallo Clag!

Ich habe jetzt eine Abfrage eingebaut, ob die Zelle eine Formel enthält. Wenn nicht, bricht das Programm ab. Eine weitere Prüfung, ob z.B. eine verwendbare Adresse in der Formel steht ist mir zu aufwendig. Das geht wahrscheinlich nur durch eine Error-Handler-Routine, durch die die Systemmeldung abgefangen und durch eine eigene Meldungsbox ersetzt wird.

Von einem externen Dokument springt das Makro jetzt, ohne Nachfrage und Schließen zurück

Gruß
Charly
Dateianhänge
Hin_und_Her_Sprung_Vers_2.ods
(9.98 KiB) 79-mal heruntergeladen

Re: zu einer Zelle und zurüch springen

von clag » Di, 20.10.2009 17:27

Hallo Charly

ja so scheint es besser zu funktionieren ohne Basic Mecker beim Rücksprung

dafür sind mir nun zwei andere Wünsche eingefallen :roll:

1. startet man das Makro in einer Zelle auf die keine Verknüpfung auf eine Andere Zelle enthält gibt es auch Basic Mecker
in dem Fall würde ich mir eine MsgBox wünschen "dies Makro funktioniert nur mit Zellen die auf eine andere Zelle verweisen !" ok
und Makro beenden

2. für den Rücksprung würde ich mir ein etwas anderes Verhalten wünschen und zwar so,
dass der Rücksprung unmittelbar ausgeführt wirdsolange der Curser/Focus noch über/auf auf der Zelle liegt die aufgerufen wurde, also bei "aktuelle Zell-adresse"="Sprungziel Zell-adresse"
und erst wenn der Focus auf einer anderen Zelle liegt sollte der Rücksprung mit Abfrage wie bereit jetzt realisiert erfolgen.

ich hoffe du raufst dir nicht zuu seehhr die Haare wenn dies liest :lol:

trotz allem, wünsche ich dir einen "relaxten" Abend

Re: zu einer Zelle und zurüch springen

von Charly » Di, 20.10.2009 10:46

Hallo Clag!

Ich habe mal die Reihenfolge der Befehle geändert und ein Unterprogramm weniger gemacht. Vielleicht hilft das bei der Problemlösung. Bei meinem Linuxrechner, hatte ich nämlich beim Erkennen vom zweimaligen Öffnen Probleme, was ich auf dem Windowsrechner nicht hatte.

Gruß
Charly
Dateianhänge
Hin_und_Her_Sprung_Vers_2.ods
(9.87 KiB) 59-mal heruntergeladen

Re: zu einer Zelle und zurüch springen

von clag » Mo, 19.10.2009 22:21

Hallo Charly,

dann werde ich noch etwas experimentieren und probieren, vielleicht kann ich erkennen was da passiert ..
ich werde berichten......

trotzdem Danke

Re: zu einer Zelle und zurüch springen

von Charly » Mo, 19.10.2009 20:44

Hallo Clag!

Mein abgeändertes Makro macht folgendes. Wenn es eine Verknüpfung, beginnend mit "='file", findet, öffnet es diese Datei. Wenn Sie schreibgeschützt ist, wird sie wieder geschlossen und das Makro sucht nach einer geöffneten Datei, die die gesuchte Url hat. Erst, wenn er eine solche nicht findet, öffnet er wieder die schreibgeschützte Datei, mit dem von dir beschriebenen Hinweis. Dieser Hinweis hätte also bei dir nicht hochkommen dürfen. Die letzte Fehlermeldung könnte dadurch gekommen sein, weil ich die Arrayvariable Dummy nicht nochmals im Sub AktivesDokument(url) mit Dim deklariert habe, was bei Arrays erforderlich ist. Aber bis zum zweiten Öffnen der Datei und damit zur Fehlermeldung hätte es gar nicht kommen dürfen.

Auf meinen PC funktioniert das Makro einwandfrei. Leider kann ich die Ursache bei dir nicht finden, wenn ich den Fehler nicht reproduzieren kann.


Gruß
Charly

Re: zu einer Zelle und zurüch springen

von clag » Mo, 19.10.2009 19:07

Hallo Charly,

wenn ich das Makro aufrufe und die Quelldatei war bereits geöfnet kommt eine MsgBox mit "kann die Datei nur schreibgeschützt öffnen" "ok"
danach kommt eine Basic Fehlermeldung "Objektvariable nicht belegt" egal ob ich ok oder esc drücke ?

kann man das schließen/speichern nicht wie im Programm hand haben,
dass erst dann wenn die Datei verändert wurde die Frage gestellt wird "speichern oder verwerfen"?

dann wäre ja schon alles im lot :D

schönen Abend

Re: zu einer Zelle und zurüch springen

von clag » So, 18.10.2009 21:31

Hallo Charly

zuerst vielen Dank für deine Äkschen,
ich werde das Makro gleich ausprobieren und dann berichten aber vermutlich erst morgen..

schönen Abend noch

Re: zu einer Zelle und zurüch springen

von Charly » So, 18.10.2009 20:33

Hallo Clag!

Ich habe jetzt noch eine Abfrage nach geöffneten Dokumenten eingebaut.


Gruß
Charly
Dateianhänge
Hin_und_Her_Sprung_Vers_1.ods
(11.16 KiB) 88-mal heruntergeladen

Re: zu einer Zelle und zurüch springen

von clag » So, 18.10.2009 14:32

Hallo Charly,

für mein ursprüngliches Vorhaben würde es tatsächlich reichen wenn die Quelldatei durch das Makro readonly geöffnet wird
und der zweite shortcut/Rücksprung die Datei unverändert und ohne Nachfrage wieder schließt.
Damit wird auch gleich verhindert, das versehentlich an der Datei etwas verändert wird sowie mehrfaches öffnen.

Es wäre aber möglich, dass die Datei bereits geöffnet ist und verändert wurde aber noch nicht gespeichert ist,
dann würde diese Variante möglicherweise ein falsches Ergebnis liefern.

Um das zu verhindern müsste das Makro erst prüfen ob die aufgerufene Datei bereits geöffnet ist,
wenn ja, dann auf die geöffnete Datei zugreifen, bei Rücksprung keine Schließ- oder Speicher Aktion
wenn nein, die Datei readonly öffnen und bei Rücksprung schließen.

Damit könnten auch alle Abfragen beim Rücksprung entfallen (schneller)
Wenn man die Quelldateien editieren möchte muss man sie eben vorher öffnen (wenn ja Abfrage)

diese Gedanken zum Verhalten des Makro sind so bei meiner Probiererei entstanden.....

ich hoffe es ist nicht so schwierig, das im Makrocode zu realisieren, aber das hängt wohl sehr stark von den persönlichen Basic Fähigkeiten :lol:
also für mich, zz noch nicht machbar :cry:

schönes Rest Wochenende noch

Re: zu einer Zelle und zurüch springen

von clag » Sa, 17.10.2009 20:01

Hallo Charly,

nach meinem Calc Frust Gestern ist das ja mal eine super Überraschung im positiven Sinn, hatte gar nicht mit gerechnet :D
da hast du dich ja noch ordentlich ins Zeug gelegt, dafür zuerst ein FETTES DANKE !

Passt auch gut zum meinem Thema und das Makro funktioniert auch ganz prima, nur beim Rücksprung aus einer anderen Datei klemmt es noch etwas
nämlich wenn die Datei bereits geöffnet war, da wird diese Datei ein zweites mal aber schreibgeschützt geöffnet und dann meckert Basic weil es die Datei speichern möchte aber nicht kann.

Im Moment denke ich ein editieren und speichern ist vielleicht nicht unbedingt nötig, da könnte man Datei generell ohne speichern verlassen und schließen.
hm hm Ich will aber erstmal noch ein wenig experimentieren .......
ich berichte dann aber in kürze.

schönen Abend noch

Re: zu einer Zelle und zurüch springen

von Charly » Sa, 17.10.2009 10:17

Hallo Clag!

Du hast in einer PN die Frage gestellt, ob man mit einem Link auch zu einer externen Datei springen kann. Das ist eigentlich kein Problem. Das Problem kommt erst, wenn du von dieser Datei mit einem Tastaturkürzel wieder zurückspringen willst. Wenn das Makro in der ersten Datei gespeichert ist und du dort das Kürzel erzeugt hat, steht es nicht mehr zur Verfügung, wenn eine andere Datei aktiv ist. Du müsstest dann erst mit der Maus die Ausgangsdatei aktivieren und dann das Makro starten.

Ich habe mal versucht das in die Datei einzubauen, allerdings im Moment nur für eine File-Verknüpfnung. Aus Übersichtsgründen habe ich das Makro gesplittet.


Gruß
Charly
Dateianhänge
Hin_und_Her_Sprung_Vers_1.ods
(10.79 KiB) 56-mal heruntergeladen

Re: zu einer Zelle und zurüch springen

von clag » Mo, 12.10.2009 16:36

Hi Charly,

YES, he can ! :D

ja, genau so hatte ich mir das vorgestellt,
wenn du wüstest wie viel Schrott schon in "Meine Makros Standart Modul1-5" steht
aber für mehr wie für ne MsgBox mit Adressausgabe der Zelle hat's noch nicht gereicht :? :(

also ganz herzlichen Dank das erspart mir ne Menge Frust
und der arme PC/Tastatur muss nun auch nicht mehr so leiden :lol:

PS
Der wollte bestimmt auch nen Makro in StarBasic schreiben :shock:
http://www.youtube.com/watch?v=fS19zZBJWJo&NR=1

Re: zu einer Zelle und zurüch springen

von Charly » Mo, 12.10.2009 14:09

Hallo Clag!

Ich habe mich mal erbarmt und meinen Versuch als Datei angehängt.


Gruß
Charly
Dateianhänge
Hin_und_Her_Sprung.ods
(8.2 KiB) 133-mal heruntergeladen

Re: zu einer Zelle und zurüch springen

von clag » Fr, 09.10.2009 11:10

Hallo Leutz,

ich habe mal so Batch manier aufgeschrieben wie ich mir das Makro vorstelle
in Excel und VBA hätte ich mir das schon hingebastelt aber starbasic steh ich auf Schlauch :?

variable 1 = jumpstart
variable 2 = jumpziel
variable 2 = jumpback

wenn jumpback = "aktiv" goto 2.

1.
REM dieser Teil ist etwa das was der Code von Karolus bereits tut

aktuelle Zelladresse in jumpstart schreiben
Zieladresse herausfinden und in jumpziel schreiben
zu Adresse jumpziel wechseln
ein "aktiv" in jumpback schreiben
ende

2.
REM wenn beim zweiten Aufruf aktuelle Adresse und die variable "jumpziel" gleich sind,
REM zur Startadresse "jumpstart" zurück und die variablen leeren
REM wenn nicht
REM für den Fall das nach einem Enter in der Zelle
REM die aktuelle Zelle eine Zeile unter oder eine Spalte neben "jumpziel" liegt
REM abfragen ob es zurück gehen soll

wenn aktuelle Zelladresse=jumpziel
zur Zelle jumpstart wechseln"
3.
variable jumpstart leeren
variable jumpziel leeren
variable jumpback leeren
ende
sonst
wenn aktuelleZelladresse-1Z=jumpziel goto 4.
wenn aktuelleZelladresse-1S="jumpziel goto 4.
ende
4.
ein Dialogfenster öffnen "zurückspringen" JA NEIN
ja = goto 2.
nein = goto 3.
ende


vielleicht erbarmt sich ja doch noch jemand für mich,
der mir das in starbasic formulieren oder gar erklären kann / will

Nach oben