Hallo,
die meisten scheinen ja in der sog. „A1-Schreibweise“ zu denken ( erinnert mich irgendwie das indianische Maßsystem oder den Sieg von VHS, ´was Feines für Masochisten halt oder für überintelligente Multitasking-Talente ).
Ich jedenfalls nicht.
Aber Spaß beiseite:
Ich suche gerade nach einem Umschaltknopf für die Bezugsart.
Kann mir jemand helfen?
Freundliche Grüße
Thomas
Hallo,
Excel2007 >Excel-Optionen > Formeln >arbeiten mit Formeln
guten Rutsch
Holger
Hallo Thomas,
die meisten scheinen ja in der sog. „A1-Schreibweise“ zu
denken
so wie ich das mitkriege, irgendwas mit Limes Richtung 100 %, aber in High-Tec Mathe war ich noch nie gut
Aus Interesse, was genau hast du gegen A1 Schreibweise?
( erinnert mich irgendwie das indianische Maßsystem
K.A., hatten die eines?
oder den Sieg von VHS,
Naja, da hat nicht das Bessere gewonnen oder die bessere Vermarktung von dem VHS-Zeugs.
was Feines für Masochisten halt
Also Leute die, wie Teile von, du und ich die die mistige RC,ZS Schreibweise LIEBEN?
Ich suche gerade nach einem Umschaltknopf für die Bezugsart.
Such doch mal in Extras—Optionen, da findest du dein begehrtes Kästchen zum Anhaken.
Wenn es bei dir oben in der menuleiste kein „Extras“ gibt, Pech für dich, dann muße hier 100mal die Brettbeschreibung in Bezug auf Versionsangabe durchlesen.
Und dann, kennst du das Leben des Brian? Naja, hol dir schon mal Kreide *schwergrins*
Gruß
Reinhard
Umschalten Bezugsart 1Klick
Hallo Holger,
sorry, habe mich unklar ausgedrückt. Ich meinte einen Button, den ich mit 1 Klick umschalten kann. So aus den Werkzeugkästen vielleicht…
Notfalls würde ich mir ein Makro basteln, aber der Recorder zeichnet das nicht auf und beim Suchen kriege ich auch nix.
Weiß jemand, wie man das in vba formuliert?
Auch Dir Guten Rutsch in 2011 wünscht
Thomas
Grüß Gott,
nimmst Du folgenden VBA-Befehl — den mein Excel ohne Probleme aufgezeichnet hat:
Application.ReferenceStyle = xlA1 / xlR1C1 \*
HTH.
Markus
____________________
* xlA1 = 1, xlR1C1 = -4150.
Die Makros werden m.W. nicht kompiliert, auch wenn Office das meldet, sondern interpretiert. Deshalb ersetze ich die Literalkonstanten stets durch ihre Werte. Ich gehe nämlich davon aus, daß diese Literalkonstanten im Laufe der Versionen niemals ihre Werte wechseln werden. Und zur Sicherheit stehen sie dann als Kommentar, der ignoriert wird, neben ihrem Wert. Was kann da noch passieren?
Hallo Reinhard,
vielen Dank für Deine Antwort.
…
( erinnert mich irgendwie das indianische Maßsystem
K.A., hatten die eines?
Ist nur ein Spitzname für das Ding mit Meilen,yard, Fuß, Zoll und den berühmten Bruchteilen davon - mit Prozentrechnung hat das nix zu tun. Auch nicht mit Dezimalbrüchen - Gruß an dieser Stelle an alle amerikanischen Ingenieure
oder den Sieg von VHS,
Naja, da hat nicht das Bessere gewonnen oder die bessere
Vermarktung von dem VHS-Zeugs.was Feines für Masochisten halt
Also Leute die, wie Teile von, du und ich die die mistige
RC,ZS Schreibweise LIEBEN?
Also die Koexistenz von RC und ZS ist noch ein anderes Thema --> wird ´mal übersetzt und ´mal nicht. Das fällt z. B. dann auf, wenn man -wie im Thead unter diesem- per vba Zellen mit Formeln füttern will.
Ich suche gerade nach einem Umschaltknopf für die Bezugsart.
Die Betonung liegt auf „einem“, wie ich gerade unten ergänzt habe
Such doch mal in Extras—Optionen, da findest du dein
begehrtes Kästchen zum Anhaken.
Leider zu weit weg. Die Betonung liegt auf „einem“, wie ich gerade unten ergänzt habe
Wenn es bei dir oben in der menuleiste kein „Extras“ gibt,
Pech für dich, dann muße hier 100mal die Brettbeschreibung in
Bezug auf Versionsangabe durchlesen.
Zur Strafe? Ich denke, Du bist auch gegen A1???
Und dann, kennst du das Leben des Brian?
Nur grob…?
Naja, hol dir schon
mal Kreide *schwergrins*
Das verstehe ich nun gar nicht. Kannst Du das bitte anders formulieren? Was macht man mit Kreide? Hilft die, wenn man einen Zellenbereich per vba abtasten und ganz lässig von AA30 nach AB1 springen will? — Ich weiß, dass das geht! …
Gruß
Reinhard
Guten Rutsch
Thomas
P.S.: Du wärst meine große Hoffnung wg. vba-mäßiger Umschaltung
Hallo Markus,
klappt ausgezeichnet. Vielen Dank
Ich hatte das vor ein paar Tagen versucht mit dem Aufzeichnen. Keine Ahnung, was ich falsch gemacht habe
Ist ja interessant. 4150/1? Wie kommt man darauf? Ich dachte immer, solche Zustandsvariablen sind etwas ´was binäres, wenn man nur 2 Ausprägungen zu unterscheiden hat. Aber ich kenne mich da leider nicht aus.
Jetzt muss ich das nur noch irgendwie in die Menüleiste hängen…
Guten Rutsch ins Jahr 2011 wünscht
Thomas
Jain
Hallo Markus,
Die Makros werden m.W. nicht kompiliert, auch wenn Office das
meldet, sondern interpretiert.
na gut dein dein m.W. gegen mein m.W. owohl das kein „gegen“ ist, wir sind ja beide daran interessiert wie es denn nun wirklich real ist.
M.W. nach wird anfangs zur Laufzeit o.ä. schon kompiliert, zumindest wird z.B für Variablen, z.B. ein Array „Platz“ reserviert.
Deshalb bringt es z.B. Null, irgendwelche DIM Anweisungen weiter unten im Code zu platzieren, die werden sowieso , da ist halt meine Unwissenheit, sofort beim Eingeben „vorkompiliert“, spätestensbei Programmstart.
Was da jetzt außer DIM noch „kompiliert“ wird weiß ich nicht.
Dann wird in der Laufzeit der große Rest des Codes „interpretiert“.
Mal ein Beispiel,
Sub tt()
Dim x
Range(„A1“).Value = „a“
x = 2 * Range(„A1“).Value
End Sub
Ist klar was passiert, bei x=… kommt der Debugger.
Jetzt ändere mal das ab in
x = 2 * asc(Range(„A1“).Value)
schon klappts. Mutmaßlich „packt“ das der Interpreter.
Aber mache da mal genau in diesem Moment
Sub tt()
Dim x ,y
Range(„A1“).Value = „a“
x = 2 * Range(„A1“).Value
End Sub
daraus, schon kommt die bekannte Fehlermeldung
„nach diesem Vorgang wird das Projekt zurückgesetzt…“
PS: Mir fällt dabei auf, ich hab da noch nie auf die Anfrage wollen Sie trotzdem fortsetzen mit Ja geantwortet. Muß ich doch glatt mal testen was dann für lustige Dinge geschehen *gg*
Was mir da sehr fehlt ist, zu sehr alten Dos Zeiten gabs Beschreibungen was genau beim Start eines Dos-Systems auf einem PC geschieht.
Also Einschalten, POST, dann Auslesen der ich glaub 64 bytes Boot,
dann kommt erst Dos ins Spiel und dann war schön erklärt wie es dann mit config.sys, autoexec.bat usw. weitergeht bis dann das C; erscheint.
Gut, Win ist mir egal, aber bei Word, Excel hätte ich gerne so einen Startablauf.
Der Bezug zum Thema ist, da fehlt mir natürlich auch der Ablaufplan, was eigentlich geschieht wenn ich da F5 oder F8 drücke im Editor.
Gruß
Reinhard
Hallo Thomas,
4150/1? Wie kommt man darauf? Ich dachte immer, solche Zustandsvariablen sind etwas ´was binäres, wenn man nur 2 Ausprägungen zu unterscheiden hat.
Drei Tastengriffe:
-
xlA1 im Codemodul kopieren
-
Strg+g - Direktfenster öffnet sich oder wird aktiviert
-
Strg+a - alter Inhalt wird markiert
-
Eintippen Fragezeichen und Strg+V - nun steht da
?xlA1
-
Enter - der Zahlenwert der Literalkonstante wird angezeigt.
So mach ich’s immer. Aus Neugier, was sich hinter den Konstanten verbirgt. Früher hab ich immer in der Hilfe nachgesehen und mir die Zahlen gemerkt, heute finde ich’s komfortabler beim Entwerfen.
Jetzt muss ich das nur noch irgendwie in die Menüleiste hängen…
Sub BezugsartUmschalten() 'MH 31.12.10
'schaltet zwischen A1- und Z1S1-Bezügen um
With Application
.ReferenceStyle = IIf(.ReferenceStyle = xlA1, xlR1C1, xlA1)
End With 'Application
End Sub 'BezugsartUmschalten
Schreibst Du diesen Code in Deine persönliche Arbeitsmappe.
Dann machst Du über Extras > Anpassen eine Benutzerdefinierte Schaltfläche in Deine Symbolleiste. Solange der Anpassen-Dialog noch offen ist, klickst Du auf Auswahl ändern (bzw. Rechtsklick auf neue Schaltfläche), ganz unten ist ein Befehl Makro zuweisen. In der Liste sollte dann auch das neue Makro sein.
Danke für die Wünsche.
HTH.
Markus
Hallo,
ich verwende seit Jahren Excel und etwas Calc, alles ohne Makro, und verstehe hier nix.
Ihr seid echt spitze, dafuer mal ein
Extra-guten Rutsch ins Neue Jahr.
gruss Helmut
Nachteile der A1-Schreibweise
Hallo Reinhard,
die bisher schon angesprochenen Nachteile der A1-Schreibweise noch einmal übersichtlich und ergänzt:
1.) Ich finde es schwierig, die Spalten-LaufVariable zu steuern, wenn man per Schleife einen Bereich eines Rechenblattes abtasten will und dabei diese Schreibweise verwenden will/muss.
2.) Entsprechend unübersichtlich wirkt der fertige Code dann auf mich.
3.) Üblicherweise wird in vba-Funktionen zuerst der ZeilenParameter gefordert und dann die Spalte, hier umgekehrt.
4.) Komplizierte Umrechenfunktionen für die A1-Schreibweise ( offset ) sind unnötig, wenn man konsequent Z1S1 verwendet.
Und was findest Du an der Z1S1 so mistig?
Freundliche Grüße
Thomas
Grüezi Falken
1.) Ich finde es schwierig, die Spalten-LaufVariable zu
steuern, wenn man per Schleife einen Bereich eines
Rechenblattes abtasten will und dabei diese Schreibweise
verwenden will/muss.
Mit For Each und den entsprechenden Objekten geht das aber auch ganz flott und einfacht *find*
2.) Entsprechend unübersichtlich wirkt der fertige Code dann
auf mich.
Das sehe ich genau anders rum - ich weiss wirklich nicht auf Anhieb welche Zelle die Cells(1, 246) ist - bei Range(„IL1“) ist mir das aber sofort klar
3.) Üblicherweise wird in vba-Funktionen zuerst der
ZeilenParameter gefordert und dann die Spalte, hier umgekehrt.
Das ist wohl richtig, ist aber mit der A1-Schreibweise genau so wie im Tabellenblatt.
4.) Komplizierte Umrechenfunktionen für die A1-Schreibweise (
offset ) sind unnötig, wenn man konsequent Z1S1 verwendet.
.Offset() und .Resize() sind hier aber wirklich gute Funktionen.
Aber jeder wird nach seiner Fasson selig - wer sich einmal ein ein System gewöhnt hat, will nicht so schnell davon abweichen.
Und bestimmt gibt es Fälle wo mal das eine oder dann das andere System seine Vorteile hat - daher möchte ich es hierbei belassen…
Mit freundlichen Grüssen
Thomas Ramel
- MVP für MS-Excel -