Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

PowerQuery - Intellisense
#1
Hallo Ihr Wissenden,

in PowerQuery nervt mich seit einiger Zeit Intellisense(?) enorm:

sobald ich in meinem M-Code etwas tippe (aktuell: 'else'), kriege ich eine Liste mit (oft unpassenden) Vorschlägen angeboten. Drücke ich jetzt leichtsinnigerweise die ENTER-Taste (weil ich mit meinen Gedanken schon längst beim nächsten Schritt bin), wird statt meines Befehls etwas an der Stelle (meist) völlig Unsinniges eingefügt.

Daraus meine Fragen:
  • warum schlägt Intellisense solchen Müll vor, obwohl ich doch den von mir gewünschten Befehl schon vollständig eingegeben habe
  • es könnte doch zumindest meine Eingabe als oberster Eintrag stehen
  • kann ich Intellisense beeinflussen, was es mir anzeigt oder
  • kann ich Intellisense ausschalten (wäre aber dumm, da es oftmals auch was Sinnvolles anzeigt wie z.B. die Stepnamen, die ich vielleicht gerade verwenden möchte, etc.)

Danke für Eure Tipps,
RaiSta
 Man(n) ist nie zu alt für die Erkenntnis, dass das bisher Gelernte doch nur bedingt gültig oder auch nur brauchbar ist. 27
Antworten Top
#2
Hallo,

beeinflussen kannst Du m.W. IntelliSense nicht. Abschalten geht über PQ-Editor / Datei / Optionen / Abfrageoptionen / PQ-Editor.

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) :: 2011-2019 & 2020-2022 :: 10 Awards
https://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
[-] Folgende(r) 1 Nutzer sagt Danke an maninweb für diesen Beitrag:
  • RaiSta
Antworten Top
#3
Hi,

die Intellisense greift nicht auf einfache Kontrollstrukturen wie if und else zu, deswegen kannst du sie dort auch nicht auswählen. Ansonsten verhält sich die CodeCompletion ähnlich wie bei VisualStudio. Um Tastenanschläge zu sparen lassen sich Funktionen über die ersten Beiden Buchstaben finden. Einzelne Funktionen auch über ihren Ersten und letzten Buchstaben. Bei Funktionen in PascalCase reicht es aus, die Großbuchstaben zu tippen. Dein Beispiel else führt also eigentlich zu "els" und damit zu
Excel.ShapeTable
und wäre mit elst und exst funktionsgleich.
Für Excel.CurrentWorkbook reicht es also aus, elcw einzutippen; Statt elcw funktioniert auch Excw.
Ich persönlich finde das recht praktisch, ich ärgere mich mehr darüber, dass mir diese Hilfe auf meinem Arbeitsrechner mit xl2016 fehlt.

Viele Grüße
derHöpp
Antworten Top
#4
(09.03.2023, 17:11)derHoepp schrieb: die Intellisense greift nicht auf einfache Kontrollstrukturen wie if und else zu

Das ist meiner Meinung nach doof (interessiert nur leider wohl nicht wirklich jemanden...), denn die meisten Befehle, die ich tippe, sind solche 'einfachen Konstruktionen' Wenn mir PQ dann solche 'besonderen Befehle' vorschlägt und ich meinen eigentlich trivialen Eintrag mit ENTER abschließe, landet der oberste Befehl aus der Liste im Code anstelle meiner einfachen Konstruktion, den ich aufwändig wieder entfernen und meinen trvialen Text erneut eintippen muss.
Damit wird meines Erachtens der Nutzen dieser CodeCompletion in sehr vielen Fällen zunichte gemacht. (Und warum erkennt Intelli(!)sense in meinem Code anhand der Umgebung (wenn ich z.B. mit 'if' angefangen habe) nicht, was hier erwartungsgemäß  in der Nähe wohl folgen wird und schlägt mir stattdessen nur so was in meinem Kontext erst mal völlig Abwegiges vor - zumindest wird mir das der Befehlsstruktur nach irgendwo Erforderliche nicht angeboten? Dass 'if' irgendwo zwingend mit 'then' und danach irgendwo mit 'else' weitergeführt werden muss, sollte einem Intelli(!!)sense doch wohl bekannt sein. Daher erwarte ich eigentlich, dass das logisch Erforderliche zumindest auch(!) Teil der Vorschlagsliste ist - geordnet nach Wahrscheinlichkeit der Verwendung.)

(09.03.2023, 17:11)derHoepp schrieb: Ich persönlich finde das recht praktisch, ich ärgere mich mehr darüber, dass mir diese Hilfe auf meinem Arbeitsrechner mit xl2016 fehlt.

Keine Frage, für nicht-triviale Befehle ist das sehr hilfreich, nutze ich auch. Aber der größte Anteil – zumindest meiner Aktivitäten – besteht nun mal aus 'trivialen Butter und Brot Konstruktionen' wie if - then - else, try - otherwise, ...

Weiterhin kommt noch 'on top', dass Intellisense oftmals mit CodeCompletion wüste Ergebnisse erzielt, wenn ich z.B. mit 'table.×××' oder irgendwas anderem anfange zu tippen, mir dann aus der Liste den gewünschten Befehl auswähle und anschließend dann "Table" bzw. was ich angefangen habe, zu tippen, doppelt dasteht, direkt ein Wort am anderen, sodass das Trennen wieder aufwändig wird. Na ja, ärgert mich immer mal wieder...

Wie gesagt, missen möchte ich Intellisense nicht, dafür ist es letztlich doch zu nützlich. Aber manchmal ... kocht die Wut in mir hoch, wenn ich irgendein "SAP-Hana-xyz"-Kommando mühselig entfenen muss, um stattdessen mein 'else' wieder hinzuschreiben...

Daher wünsche ich mir eine Konfigurationsmöglichkeit - aber bis Weihnachten ist's noch ein paar Tage hin...

Gruß und Dank,
RaiSta
 Man(n) ist nie zu alt für die Erkenntnis, dass das bisher Gelernte doch nur bedingt gültig oder auch nur brauchbar ist. 27
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste