Ich bin eine Mischung aus Saugenichts und Nichtsputz.

Letzte Woche war ich in einer Rechtsanwaltskanzlei und habe gefühlte 15.000 Diagramme bearbeitet. Dabei sind mir eine Reihe an Dingen aufgefallen. Beispielsweise waren wir plötzlich sehr irritiert, warum auf einmal die Differenz zweier Zahlen so hoch ausfällt:

33 881 285 – das ist zu viel!

Der zweite Blick fällt auf den kleinen Bobbel – die Zelle wurde anders formatiert – mehrere Nachkommastellen … Es handelt sich um ein Komma als Dezimaltrennzeichen und nicht um einen Punkt als Tausendertrennzeichen. Alles in Ordnung – und den Schweiß von der Stirn wischen!

Meine Ex schreibt mich an: „Wünschte, du wärst hier.“ – Das macht sie immer, wenn sie über den Friedhof geht.

Letzte Woche war ich in einer Rechtsanwaltskanzlei und habe gefühlte 15.000 Diagramme bearbeitet. Dabei sind mir eine Reihe an Dingen aufgefallen. Beispielsweise:

Basierend auf berechneten Daten wird zwei Kreisdiagramme. Das eine besteht aus zwei Totensegmenten, beim anderen ist einer der Teile in zwei Bereiche unterteilt. Erstaunlicherweise ändern sich plötzlich die Zahlen:

Der Grund ist einfach: Excel versucht die Zahlen des Tortendiagramms immer so darzustellen, dass die Summe 100% ergibt – also drei gleich große Teile werden nicht mit jeweils 33% beschriftet, sondern mit 33%, 33% und 34%. Wenn das stören sollte, könnte man die Zahlen als Prozentzahlen formatieren – mit Nachkommastellen:

Mein Lieblingswintergemüse ist die Marzipankartoffel.

Letzte Woche war ich in einer Rechtsanwaltskanzlei und habe gefühlte 15.000 Diagramme bearbeitet. Dabei sind mir eine Reihe an Dingen aufgefallen. Beispielsweise:

Erstellt man ein Pivotchart und bemerkt, dass Zeile und Spalte vertauscht sind:

kann man das Diagramm transponieren.

Erstaunlicherweise wird dann auch die Pivottabelle gedreht:

Bereits ein Buch enthält den Tagesbedarf an A, B, C, D, E und K. Und viele weitere lebenswichtige Buchstaben.

Letzte Woche war ich in einer Rechtsanwaltskanzlei und habe gefühlte 15.000 Diagramme bearbeitet. Dabei sind mir eine Reihe an Dingen aufgefallen. Beispielsweise:

Wir haben Datenpunkte, die in einem Liniendiagramm dargestellt werden. Durch sie soll jeweils eine Trendlinie gehen – darum ging es in diesem Diagramm. Mit dem Vorne-Hinten-Spiel kann man die Reihenfolge der Legendeneinträge ändern – jedoch nicht der Legendeneinträge der Trendlinien. Schade!

Wenn du die Wahl hättest zwischen Traumfrau und Traumauto – welche Felgen würdest du dann nehmen?

Hallo Rene!

Benötige bitte deine Hilfe.

Zum Jahresende fallen die Auszahlungen der Subventionen an.

Die vorgelegten Unterlagen entsprechen nicht immer den Formvorschriften.

Damit bei dem Jahresbericht zu lesen ist warum etwas nicht anerkannt wurde habe ich die beiliegende Tabelle erstellt.

Nun möchte ich, dass bei der Zusammenfassung der Paare bei den Anmerkungen und Beleg-Nr. die Ziffern aus der Aufstellung jeweils in einer Zwelle eingetragen werden.

Bitte um deine bewährte Hilfe.

Bleib gesund,

mit besten Grüßen

Peter

Meine erste Überlegung: mit VERGLEICH(F28;tbl_KF_Kosten[Turnierpaar];1)-VERGLEICH(F28;tbl_KF_Kosten[Turnierpaar];0) kann ich die Differnez zwischen letzten gefundenem Wert und erstem gefundenem Wert ermitteln. BEREICH.VERSCHIEBEN liefert mir den Bereich; TEXTVERKETTEN fasst sie zusammen. Das Problem hierbei ist jedoch, dass die Werte nicht gruppiert untereinander stehen und auch nicht alphabetisch sortiert sind. Also: zweiter Versuch: FILTER:

=TEXTVERKETTEN(",";WAHR;FILTER(tbl_KF_Kosten[Bel
Klub];tbl_KF_Kosten[Turnierpaar]=F28;""))

Und damit geht es hervorragend!

Mein Schatz sagt oft „Du Hengst“ zu mir. Vorhin zum Beispiel: „du Hengst nur noch auf der Couch rum!“

Einfach nicht aufgepasst!

Programmieren Sie VBA? Programmieren Sie Formeln in VBA? Auf einem Tabellenblatt befinden sich in den Spalten BJ und BL Daten, die vertikal angeordnet sind:

Auf einem anderen Blatt wird Bezug auf diese Daten genommen:

Während ich die erste Spalte nach unten ziehen kann, muss ich die Formeln der ersten Zeile getrennt eingeben – ich möchte weder mit MTRANS, INDIREKT noch mit BEREICH.VERSCHIEBEN arbeiten. Es handelt sich um maximal sechs Werte.

Die Formeln müssen per VBA neu geschrieben werden. Der Makrorekorder ermittelt für die Formel

=WENN(tbl_Basisdaten!BJ2="";"";tbl_Basisdaten!BJ2)

der Zelle A2 den VBA-Code:

ActiveCell.FormulaR1C1 = " =IF(tbl_Basisdaten!RC[61]="""","""",tbl_Basisdaten!RC[61])"

Dabei ist RC[61] ein relativer Bezug: R -> gleiche Zeile; C[61] -> Spalte um 61 Spalten verschoben. Wäre der Bezug absolut ($BJ$2) wäre der Code:

R2C62

also: in Zeile 2 und in Spalte 62 – egal, wo sich die Zielzelle befindet. Der Code wird in einer Schleife verwendet:

For i = 1 To 6
   ThisWorkbook.Worksheets("tbl_Risikomatrix").Range("A1").Offset(i, 0).FormulaR1C1 = _
      "=IF(tbl_Basisdaten!RC[61]="""","""",tbl_Basisdaten!RC[61])" ' -- erste Spalte A
Next i

Klappt famos! Und nun die erste Zeile. Der Makrorekorder zeichnet auf:

ActiveCell.FormulaR1C1 = _
    "=IF(tbl_Basisdaten!R[1]C[62]="""","""",tbl_Basisdaten!R[1]C[62])"

Das kann doch leicht angepasst werden:

For i = 1 To 6
    ThisWorkbook.Worksheets("tbl_Risikomatrix").Range("A1").Offset(0, i).FormulaR1C1 = _
        "=IF(tbl_Basisdaten!R[" & i & "]C[62]="""","""",tbl_Basisdaten!R[" & i & "]C[62])" ' -- erste Zeile 1
        
Next i

Padautz – das funktioniert nicht! In B1 greife ich auf Spalte 63 zu, also 62 Spalten „neben mir“. In C1 dagegen benötige ich die Spalte, die sich 61 Spalten neben mir befindet, in D1 dagegen 60 Spalten. Also noch einmal:

For i = 1 To 6
    ThisWorkbook.Worksheets("tbl_Risikomatrix").Range("A1").Offset(0, i).FormulaR1C1 = _
        "=IF(tbl_Basisdaten!R[" & i & "]C[" & (63 - i) & "]="""","""",tbl_Basisdaten!R[" & i & "]C[" & (63 - i) & "])" ' -- erste Zeile 1
Next i

Und das klappt! Man muss so aufpassen bei den Bezügen! Und beim Umdenken von =BL2 auf =R[1]C[62].

Kinder, wie die Zeit rast! Noch zweimal duschen, dann ist Heiligabend!

Mourad Louha hat darauf hingewiesen, dass Namen eine maximale Länge von 255 Zeichen haben dürfen. Während man Namen mit einer Länge bis zu 244 Zeichen problemlos verwenden kann, produziert Excel bei einer Buchstabenstabenanzahl von 255 Zeichen Probleme. 256 Zeichen und mehr ist nicht zugelassen.

Test?

Schnell einen langen Text erzeugen – Kleist liefert sehr viele. Die Funktion LÄNGE ermittelt die Anzahl der Zeichen. Und diese kann man in den Namensmanager kopieren und so die Namen erzeugen:

Ein Name mit einer Länge von 273 funktioniert nicht.

Und dann: die Auswahl über das Namensfeld funktioniert nicht:

Die Datenüberprüfung kann den 255er-Namen mit [F3] nicht verwenden:

Und auch nicht die Diagramme:

Also: Finger weg von einem Namen mit 255 Buchstaben! Beschränken wir uns auf Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch – das sind 58 Buchstaben.

In ein „Wenn-du-ausgetrunken-hast-dann-geht-es-ins-Bett“-Kind passen ungefähr 1,5 Liter Milch.

In ein Tabellenblatt kann x- und y-Werte eintragen und die z-Werte, also f(x,y) berechnen lassen. Und so ein Diagramm erzeugen.

Während man bei Datenreihen mit nicht äquidistanten Werten von Linie zu XY-Diagramm (Punktdiagramm) wechseln kann, gibt es bei den 3-D-Diagrammen leider keine Lösung.

Schade, so fangen das die Teilnehmer der letzten Excelschulung.

Ich nehme ja gerne mal Anhalter mit. So fangen zwar viele Horrorfilme an, aber auch viele Pornos.

Mourad Louha stellt die neuen Datentypen vor, die man über Powerquery erstellen kann:

http://www.excel-ticker.de/eigene-datentypen-mit-power-query-erstellen/

In der Registerkarte „Transformieren“ findet man das Symbol, um eigene Datentypen zu erstellen:

Gibt man die Daten zurück, erhält man das typische Symbol der Datentypen:

Mit einer Datenüberprüfung wird eine Dropdownliste geschaffen. Aus ihr wird das Attribut ausgewählt: =[Zelle].Attribut:

Mourad bemängelt, dass man die Datentypen leider nicht in Abfragen verwenden kann. Schade ist auch, dass sie nicht in der Registerkarte erscheinen:

Einige Dinge fehlen – aber ich zuversichtlich, dass Microsoft hier „nachrüsten“ wird.

79% der Abonnenten hat nicht gemerkt, dass ihr Fitnessstudio geschlossen ist.

Fast wäre ich reingefallen. Folge Mail erreichte mich:

Hallo René

Du hast mir kürzlich mit dem SVerweis geholfen.

Nun habe ich wiederum ein kurze Frage:

Im Anhang die Angaben von Personen. Ich möchte diese aufteilen in Anrede (Mr.), Vorname und Nachname.

Wie geht das?

Herzliche Grüsse

Andreas

Das kann doch kein Problem sein, dachte ich klickte auf den Assistenten „Daten / Text in Spalten“. Doch der belehrte mich eines besseren:

Ich schreib zurück:

Hallo Andreas,

die Funktion

=CODE(TEIL(A2;4;1))

liefert 160. Das ist der ASCII-Code des „Leerzeichens“ zwischen „Mr.“ und „Rüdiger“. Das Leerzeichen hat Code 32.

Woher hast du die Daten? Aus dem Internet? Aus Word? Von einem fremden System? DAS hat kein Mensch getippt!

Antwort: Wir brauchen Leerzeichen!

Markiere das Teilchen zwischen „Mr.“ und „Rüdiger“. Kopiere es.

Dann rufe den Ersetzen-Dialog auf (Strg + H).

Ersetze (Strg + V) durch Leerzeichen.

Das Ergebnis sieht aus wie vorher.

Dann kannst du die Spalte A markieren und mit dem Assistenten Daten / Text in Spalten trennen. Voilà.

Klappt das?

Liebe Grüße

René

Hoi René

Perfekt! Hat super geklappt!

LG Andreas

Was war das für ein Krach heute Nacht? – Die Schuhe sind umgefallen! – Bitte? – Ich stand noch drin.

Manchmal bin ich erstaunt. Und verblüfft. Was ich alles noch nicht weiß.

Ich habe genörgelt, dass VBA nicht alle Objekte, Methoden und Eigenschaften anzeigt:

Peter hat mich darauf hingewiesen, dass einige Objekte im Objektkatalog ausgeblendet sind. Über das Kontextmenü kann man sie einblenden:

Dann sind sie nicht nur im Objektkatalog sichtbar

sondern stehen auch in VBA sichtbar zur Verfügung:

Dennoch bleibt die Frage: Warum macht Microsoft denn so etwas?

Ich hasse es, wenn mich jemand mit dem Satz weckt: „Los aufstehen, die Sonne scheint!“ – Was soll ich machen? – Photosynthese?

Pia Bork bemängelt, dass Word nicht richtig rechnen kann. Okay – eine Summe, aber man muss sie aktualisieren.

Und COUNT? – Die Anzahl der Zahlen in einer Tabelle? Ist leider nicht – COUNT zählt nicht Inhalte (also Werte ohne Überschrift), sondern Zeilen – egal, ob leer oder gefüllt. Und damit ist diese Funktion in Word wenig brauchbar:

Danke für den Hinweis:

https://bork.blog/2020/11/17/word-funktion-count/?fbclid=IwAR3iN9lIZdJ5BDx_q7Ucx2aqRyWs03IBswqCq6a1WXdAdNZdRVOgJB_qByU

Wenn du dann Probleme brauchst, ich bin für dich da

Gestern rief Stefan an. Warum Excel sehr, sehr langsam startet, wollte er wissen. Wir überlegten gemeinsam. Hatten keine Idee. Er suchte alleine weiter und fand in den Tiefen des Internets die Lösung:

Wird das Ribbon verändert, beispielsweise durch Installation eines AddIns, wird der Schlüssel MsoTbCust in
Computer\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Excel\Options in der Registry geändert. Man muss ihn wieder zurücksetzen.

Danke an Stefan Lau für diesen wertvollen Hinweis!

Glück ist das einzige, was sich verdoppelt, wenn man es teilt. Und Bakterien!

Gestern war ich sehr verblüfft und erstaunt. Ich habe eine Excelmappe mit einer intelligenten (strukturierten, dynamischen, formatierten) Tabelle. In einer ANDEREN Datei greife ich darauf zu – per SVERWEIS, INDEX und VERGLEICH oder XVERWEIS:

Also beispielsweise über:

=SVERWEIS([@Name];Datenquelle.xlsx!tbl_Schlumpf[#Alle];2;FALSCH)

oder:

=INDEX(Datenquelle.xlsx!tbl_Schlumpf[Schlumpf];VERGLEICH([@Name];Datenquelle.xlsx!tbl_Schlumpf[Name];0))

oder:

=XVERWEIS([@Name];Datenquelle.xlsx!tbl_Schlumpf[Name];Datenquelle.xlsx!tbl_Schlumpf[Schlumpf])

Beide Dateien, die sich im gleichen Ordner befinden, werden geschlossen. Nur die Zieldatei wird geöffnet. Das Ergebnis: Fehlermeldungen bei allen drei Formeln:

Ich ersetze die Bezüge, also

Datenquelle.xlsx!tbl_Schlumpf[Name]

durch

[Datenquelle.xlsx]Quelle!$A:$A

Das ist nicht schön! Aber – es funktioniert! Hat Microsoft vergessen DAS bei intelligenten Tabellen zu implementieren? DAS ist ja ein Schritt zurück! DAS will ich eigentlich nicht (mehr). Immerhin: es funktioniert. So kann ich die Zieldatei öffnen, die Werte werden aktuell angezeigt, ohne dass die Quelldatei offen sein muss.

Danke an Christa für den Hinweis, dass man die Verknüpfung über PowerQuery organisieren kann.

Und: vielen Dank an den Hinweis von Mourad Louha: DAS IST GEWOLLT!

https://support.microsoft.com/en-sg/help/2299192/links-to-data-tables-residing-in-external-files-display-ref?fbclid=IwAR32YcJ4HKAB_B_lMBHB17OtX8y8rIV0dVoFCFrmeYTjH4zxnPADLGigbM8

James Bond soll weiblich besetzt werden? – Richtig cool: geile Autos, riesige Explosionen, Unfälle und viele Tote. Und das alles schon beim Einparken!

Amüsiert. Ich habe eine große Excel-Dummy-Liste mit 20.000 Zeilen. Ich schaue in der Druckvorschau nach:

1.203 Seiten.

Ich verringere die Seitenzahl, indem ich eine Seite breit und 200 Seiten hoch einstelle:

Ein erneuter Blick in die Seitenansicht ergibt 146 Seiten. Ich habe es mit anderen großen Dokumenten probiert – ähnlich Ergebnisse.

Die Vermutung: Excel passt auf eine Seite breit an und berechnet dann die Anzahl der Seiten in der Höhe selbst.

Sie: Warum liegst du im Anzug mit gefalteten Händen auf dem Bett? – Er: Ich habe Halsschmerzen und bereite mich vor.

Hallo René,

Mich treibt gerade etwas um. Es mag für manchen nur Kosmetik sein, mich macht es aber gerade kirre… Wenn du schnell einen Tipp parat hast, würde ich mich freuen; ich erwarte aber keinen Support. Vielleicht lautet deine Antwort ja auch: Ja, möglich, aber mit etwas (Programmier-)Aufwand. Dann ist an der Stelle sowie Schluss.

Seitenumbrüche einfügen – anpassen: kein Problem, kann ich.

Seitenlayout anpassen auf beispielsweise 1 Seite breit, 7 Seiten hoch – auch kein Problem.

Was aber, wenn die Liste nicht nur die Artikelnummern enthält, sondern auch „Überschriften bzw. Unterüberschriften“.
Aufgabe: Die darunter stehenden Artikel sollen zusammengehalten werden, ähnlich wie bei Word, da geht das mit Formatvorlagen-Überschriften und Absätze nicht trennen. (Es muss übrigens eine Excel-Datei bleiben und die Mitarbeiter sollen selbst keine Einstellungen vornehmen müssen.)

Wenn ich die maximale Seitenanzahl (breit und hoch) zur Skalierung vorgeben möchte, kann ich keinen Eingriff in die Umbrüche nehmen. Oder doch?

Der Grund, warum ich das Seitenlayout auf x Seiten breit und x Seiten hoch vorgeben möchte: Die Anwender verwenden die unterschiedlichsten benutzerdefinierten Seitenränder. Wenn ich die Umbrüche definiere, kann es mitunter vorkommen, dass bei manchen Anwendern erst auf der zweiten Seite umgebrochen wird. Auf der zweiten Seite sind dann beispielsweise nur zwei Zeilen und danach wird wieder umgebrochen, weil das ja so definiert war.

Ich freue mich jedenfalls über ein kurzes Feedback 🙂 und sage schon mal DANKE für einen Tipp von dir.

Liebe Grüße

Christa

Hallo Christa,

Die Antwort lautet: nein! Geht nicht.

Du kommst mit den Formatierungen an die Grenzen. Richtig: wenn du eine feste Seitenzahl einstellst, dann kannst du keine manuellen Umbrüche vornehmen. Entweder – oder.

Du kannst nicht zwei Zeilen miteinander „festhalten“ – wie in Word (praktische Sache! – Überschrift nicht am Ende der Seite).

Warum bin ich so sicher? Ich erstelle für einen Kunden „Risikoanalyse“. In Excel. Das heißt: das Formular dafür. Und er möchte die Risikoanalysenblätter als PDF gespeichert haben. Und mit ähnlichem Problem: die Zwischenunterschriften nicht am Ende der Seite. Also habe ich per Programmierung von oben nach unten „gesucht“: wo ist Überschrift? Wie weit bist du unten? Mache – wenn nötig einen Seitenwechsel darüber. Und DANN passe es auf eine Seite breit an (die Länge spielte keine Rolle).

Wenn bei dir die Seitenlänge EGAL wäre, könntest du ebenso vorgehen: Dokument durchschauen, möglicherweise manuelle Seitenumbrüche einfügen und DANN Seite einrichten: 1 Seite breit – bei Höhe nichts eintragen – das soll Excel berechnen.

Excel ist eine Tabellenkalkulation. Wie sagte mal ein Teilnehmer bei so einer Frage: „einen Tod musst du sterben!“. Und schau mal auf meine Seite – da gibt es einige Beiträge zu Fragen wie: Zeilenabstand definieren, hängende Einzüge, Buchstabenabstand …

bspw.:

https://www.excel-nervt.de/hat-das-bluemchen-einen-knick-war-der-schmetterling-zu-dick/

oder:

https://www.excel-nervt.de/ich-habe-so-viele-ecken-und-kanten-ich-glaube-ich-bin-ein-diamant/

sorry …

trotzdem: Liebe Grüße 

Rene

Ich wollte ja den Gartenzaun streichen. Aber da ich eine Lackdose-Intoleranz haben … nichts zu machen!

Gestern erreichte mich folgende Anfrage:

Wir haben ein sehr merkwürdiges Phänomen in einem Access-Programm. Und zwar lassen sich drei Reports plötzlich nicht mehr öffnen. Weder aus dem Programm, noch aus Access im Entwurfsmodus. Sie lassen sich auch auf keine Art exportieren. Es kommt die Fehlermeldung 2004. Nicht genügend Speicherplatz zum Ausführen der Operation.

Soweit so schlecht. Ich habe die Reports vor ca. 10 Tagen erstellt. Und täglich Sicherheitskopien gemacht. Also wollte ich die Reports von einer funktionierenden Version zurückholen. Aber in allen erstellten Sicherheitskopien kommt die gleiche Fehlermeldung. Selbst am Tag, als ich die Reports erstellt habe und sie nachweislich einwandfrei funktionierten. Auf dem Notebook von Herrn F. kommt der gleiche Fehler.

Wie kann es möglich sein, dass auch der gesicherte Stand nicht mehr funktioniert?

#####

Ich habe einige Kollegen gefragt. Die Vorschläge waren: Hardware prüfen, jedes Element der alten DB in die neue zu kopieren, DB komprimieren, Abfragen und Unterberichte prüfen, Datenbank dekompilieren, … Hilft alles nichts … alles probiert.

Kennst du das Phänomen? Kennst du eine Lösung?

Über eine Nachricht würde ich mich, beziehungsweise die Dame, sich freuen.

Seit wann haben wir eine Alarmanlage? – Du stehst auf der Katze!

„Eine üble Sache“, meint Peter.

Der „neue“ Kommentar wird auch auf gesperrten Arbeitsblättern zugelassen 🙁 Und verhindert das setzen eines alten Kommentares.

D.h. VBA Code welcher „alte“ Kommentare (Comments) setzt und dabei auf einen CommentThreaded in der Zelle trifft, hat große Probleme.

Danke an Peter für diesen Hinweis zu den Kommentaren und Notizen.

Auf der Waage den Bauch einziehen, macht dich auch nicht leichter! – Das nicht, aber ich kann die Zahlen lesen.

Ich bin erstaunt. Ich erstelle mit Excel-DNA eigene Funktionen für Excel (UDF = userdefined fuctions). Klappt gut, beispielsweise: Quersumme:

Das Ergebnis wird korrekt berechnet:

Jedoch: Wenn ich die Funktion ohne Klammer und ohne Parameter eintrage, erhalte ich:

Eine interne Fehlernummer? Ich weiß es nicht …

Wodka und Eis machen die Nieren kaputt. Rum und Eis die Leber. Whisky und Eis das Herz. Gin und Eis das Gehirn. Coca-Cola und Eis die Zähne. Das verdammte Eis ist TÖDLICH!!! Warne alle die du kennst, sie sollen um Gottes Willen das Eis weglassen!!!

Guten Abend Herr Martin,

ich freue mich sehr über Ihre unterstützende Rückmeldung.

Wenn ich Ihre Erklärung in dieser Mail richtig verstehe, kann man in der Notiz (ehem. Kommentar) also keine Bilder einbringen!?.

Falls doch, würde ich mich über ein kurze Anleitung sehr freuen.

Vielen herzlichen Dank schon jetzt für die Zeit, die Sie sich für mich nehmen.

Ich wünsche Ihnen noch einen schönen Sonntag

Vielen, vielen Dank Herr Martin, für Ihre Lösung.

Ich habe eigentlich nur den Fehler gemacht, in das geöffnete

Kommentarfeld hineinzuklicken und dann zu formatieren – klar,

zeigt es nur die Schrift-Formatierung an und keine eigentliche

Formatierung des gesamten Rahmens.

Anhand Ihres formatierten Feldes habe ich es dann begriffen.

Das hilft mir sehr weiter.

Deutsche stellen den Löwenanteil der Migranten Österreichs. Sollte sich die Entwicklung fortsetzen, muss damit gerechnet werden, dass in 50 Jahren alle Österreicher Deutsch sprechen.

Grrrr. Eine intelligente Tabelle. Ich möchte eine Zeile löschen. Aus Gewohnheit setze ich den Cursor in eine Zelle:

drücke [Strg] + [-] (und normalerweise bewege ich die Auswahl mit der Pfeiltaste nach unten. Was passiert? Es wird gelöscht, der Bildschirm wird nach oben verschoben, so dass ich nicht sehe, was gelöscht wurde:

Und richtig: die Spalte wurde gelöscht! Grrrr … Muss man höllisch aufpassen …. Grrrrr

Nach den ganzen Fleisch- und Wurstskandalen der letzten Monate und Jahre habe ich beschlossen nur noch Lebkuchen zu essen. Einen Lebkuchenskandal gab es noch nie!

Ich verwende beim Programmieren und auch oft in Excel gerne das Pipe-Zeichen (senkrechter Strich) „|“ ([Alt Gr] + [<] – auf der Schweizer Tastatur [Alt Gr] + [7]; [ALT] + 1 2 4) als Trennzeichen. Dabei bin ich ziemlich sicher, dass es in einem „normalen“ Text nicht vorkommt. Also beispielsweise:

Brummbär|Pimpel|Happy|Chef|Hatschi|Schlafmütz|Seppel

Umso erstaunter war ich über das Ergebnis der folgenden Formel:

Warum liefert die Formel

=ZÄHLENWENNS(Tabelle2[@[Jan 20]:[Dez 20]];"I")

den Wert 6. Ich habe eine Weile überlegen müssen, bis ich verstanden habe, dass der Buchstabe „I“ nicht „|“ ist – bei einigen Schriften sehe die beiden Zeichen sehr ähnlich aus. Vielleicht sollten wir – analog dem Türkischen – auch ein Punkt auf das große I setzen: İ.

Mal sollte öfter mal einen Mutausbruch haben.

Hallo Herr Martin,

vielen Dank für die schnelle Beantwortung meiner Frage.

Ich werde bei den großen Uhrzeiten versuchen in der Formel für den Durchschnittswert die Minuten zu kürzen so dass nur noch mit den Stunden gerechnet wird. Wie ich die Formel erstelle weiss ich noch nicht aber ich werde mal rumprobieren.

Hallo Herr Martin,

ich habe es mit Runden, Kürzen und Ganzzahl versucht und bekomme weiterhin einen Fehler #Wert. Ich denke, ich brauche hier doch noch einmal ihre Hilfe.

Hallo Herr J.,

wenn Sie in Excel etwas in eine Zelle eintragen, müssen Sie die Eingabe mit [Enter] abschließen. Der Grund: Excel prüft, ob Sie Text oder Zahl eingetragen haben: Text steht linksbündig, Zahlen rechtsbündig. Die Eingabe von 1oo oder 1,,50 oder 31-11-2020 wird zu Text und steht linksbündig. Auch: 1000000:30. Das ist keine Zahl; Excel kann damit nicht rechnen; die Funktion ISTTEXT kann das prüfen. Und diese müssen Sie auch verwenden.

Wenn die „zu lange Uhrzeit“ Text ist, müssen Sie sie als Text behandeln, sonst als Uhrzeit.

=WENN(ISTTEXT(B3);WERT(LINKS(B3;SUCHEN(„:“;B3)-1));STUNDE(B3))

Übrigens: Sie haben Ihre „Texte“ rechtsbündig formatiert …

schafft Abhilfe.

Hilft da?

schöne Grüße Rene Martin

Lass mich – ich muss mich da erst mal reinsteigern!

Hallo Herr Martin,

Ich bin dabei, Stunden zu analysieren, dabei bin ich auf ein Problem gestoßen.

Ich habe Stundenzahlen im 2, 3, 4 und 5 stelligen Bereich, die ich durch Mitarbeiterzahlen dividieren muss,

Obwohl mein Zahlenformat [hh]:mm bei den Stundenwerten nach meiner Ansicht korrekt ist, bekomme ich beim dividieren von 5 stelligen Stundenzahlen immer einen Fehlerwert. Könnten Sie mir bei meinem Problem helfen?

Hallo Herr J.,

werfen Sie mal einen Blick auf die Seite „Spezifikationen und Beschränkungen in Excel“:

https://support.microsoft.com/de-de/office/spezifikationen-und-beschr%C3%A4nkungen-in-excel-1672b34d-7043-467e-8e27-269d656771c3

Dort steht:

Maximale Uhrzeit, die eingegeben kann: 9999:59:59

Ich habe es ausprobiert:

=ZEIT(32000;0;0) -> funktioniert

=ZEIT(33000;0;0) -> liefert einen Fehler

Wie komme ich darauf? Ich habe Ihre Uhrzeiten mit dem Zahlenformat Standard formatiert. 1490:18 -> klappt; 11773:26 -> nichts passiert.

Schade!

Vor einigen Jahren hatte ich einen Teilnehmer in meiner Excelschulung; ein Mitarbeiter des Katasteramts der Stadt München, der Gebäudedaten eintragen wollte. Ein Gebäude in Schwabing wurde am 01.01.1875 eingeweiht. Keine Chance in Excel.

Schade, war meine Antwort.

schöne Grüße

René Martin

Zum Glück war Halloween. So konnte ich das alte abgelaufene Naschzeugs an die dicken Nachbarkinder verteilen.

Verblüffend! Kennen Sie das? Ich habe ein Tabellenblatt mit einer intelligenten Tabelle. In der Arbeitsmappe wird ein Name oder mehrere Namen definiert, die Bezug auf diese intelligente (dynamische, formatierte, strukturierte) Tabelle nehmen:

Auf einem zweiten Tabellenblatt wird mit einer Formel (oder einer Datenüberprüfung) Bezug auf die Tabelle genommen:

Wird nun dieses Tabellenblatt dupliziert, werden auch die Namen dupliziert – sie liegen nun als Arbeitsmappennamen und Tabellenblattnamen vor:

Dupliziert man nun ein weiteres Mal das Duplikat, erhält man die Frage, „wohin mit den Namen“:

Der Name ist bereits vorhanden. Klicken Sie auf „Ja“, um diese Version des Namens zu verwenden, oder klicken Sie auf „Nein“, um die Version, die Sie verschieben oder kopieren möchten, umzubenennen.

Ich möchte den Namen nicht verschieben oder kopieren!

Und dann? Ist der Name drei Mal vorhanden … einmal als Arbeitsmappenname und zwei Mal als Tabellenblattname.

Kann mann mit Männergrippe schon Pflegestufe 3 beantragen?

Erstaunlich. Ich programmiere eine Access-Datenbank, die Daten nach Excel exportiert und aufbereitet.

Die Excel-Datei liegt im XLS-Format vor und wird am Ende als XLSX gespeichert. Ich muss die Liste nach vier Kriterien sortieren. Deshlab verwende ich den „neuen“ Sortierbefehl, der seit Excel 2007 vorhanden ist:

i = xlBlatt.Range("I1").CurrentRegion.Rows.Count
xlBlatt.Sort.SortFields.Clear
xlBlatt.Sort.SortFields.Add2 Key:=xlBlatt.Range("I2:I" & i), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
xlBlatt.Sort.SortFields.Add2 Key:=xlBlatt.Range("J2:J" & i), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
xlBlatt.Sort.SortFields.Add2 Key:=xlBlatt.Range("M2:M" & i), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
xlBlatt.Sort.SortFields.Add2 Key:=xlBlatt.Range("K2:K" & i), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With xlBlatt.Sort
        .SetRange xlBlatt.Range("I1").CurrentRegion
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
End With
    ' -- sortiere, damit man zählen kann

Klappt. Klappt bei meinem Excel in Microsoft 365. Allerdings beim Kunden, der Office 2016 einsetzt – leider nicht:

Schade! Also verwende ich den „alten“ Sortierbefehl. Da er jedoch nur drei Sortierkriterien zulässt muss ich zwei Mal sortieren:

xlBlatt.Range("A1").CurrentRegion.Sort Key1:=xlBlatt.Range("J1"), Order1:=xlAscending, Key2:=xlBlatt.Range("M1"), Order2:=xlAscending, Key3:=xlBlatt.Range("K1"), Order3:=xlAscending, Header:=xlYes

xlBlatt.Range("A1").CurrentRegion.Sort Key1:=xlBlatt.Range("I1"), Order1:=xlAscending, Header:=xlYes

Geht doch!

Vor Kurzem habe ich im Fitnessstudio einen gesehen, der hat tatsächlich eine Wasserflasche in den Pringles-Halter am Laufband geklemmt!

Im Frühjahr habe ich für einen Kunden ein kleines Projekt erstellt. Es geht darum, bestimmte Informationen in Visio einzusammeln und mit VBA nach Excel zu schreiben. Einige Stunden Programmierarbeit; das Projekt lief. Ich habe getestet, der Kunde hat getestet – kein Fehler.

Letzte Woche – nach einem halben Jahr – kam eine Mail, dass das Programm an einer Stelle nicht mehr korrekt rechnen würde. Ich war erstaunt und schaute es mit an. Tatsächlich: drei Fehler(chen) habe ich gefunden:

Fehler I

For i = 1 To vsSeite.Shapes.Count
If vsSeite.Shapes(i).CellExists("Prop._VisDM_ID", False) = True Then
intTemp = WelchesRack(vsSeite.Shapes(i))
For k = 1 To vsSeite.Shapes(i).Section(visSectionProp).Count - 1
[...]

Der Denkfehler ist Folgender: Das erste Shape hat die Nummer 1. Die erste Section allerdings die Nummer 0. Das heißt: In der Zeile

For k = 1 To …

beginnt die Zählung beim zweiten Element! Diese Liste ist nullbasiert!

Fehler II

Ich sammle Werte in einer Liste ein, die folgendermaßen aufgebaut ist:

Europa|Schweiz|Bern|42|12|33|9|4711|||

Einige Werte werden erhöht:

For k = 1 To vsSeite.Shapes(i).Section(visSectionProp).Count - 1
If vsSeite.Shapes(i).Section(visSectionProp).Row(k).Cell(2).FormulaU = """" & strTeil & """" Then ' 2 = Label
If vsSeite.Shapes(i).Section(visSectionProp).Row(k).Cell(0).FormulaU = "" Then
lngTempWert = 0
ElseIf IsNumeric(Replace(vsSeite.Shapes(i).Section(visSectionProp).Row(k).Cell(0).FormulaU, """", "")) = False Then
lngTempWert = 0
Else
lngTempWert = Split(strBerechnung(intTemp), "|")(j) + CLng(Replace(vsSeite.Shapes(i).Section(visSectionProp).Row(k).Cell(0).FormulaU, """", ""))
End If

Der Denkfehler: wenn der einzufügende Wert nicht korrekt ist, darf ich nicht eine 0 einfügen, sondern den alten Wert drinlassen. Also ich darf nicht schreiben:

lngTempWert = 0

sondern:

lngTempWert = Split(strBerechnung(intTemp), "|")(j)

Fehler III

Ein Codeblock sieht so aus:

strTemp = vsSeite.PageSheet.Cells("User.Berechnung" & (k + 1)).ResultStrU("")
If strTemp Like "*|*|*" Then
strTemp0 = Split(strTemp, "|")(0): strTemp1 = Split(strTemp, "|")(1): strTemp2 = Split(strTemp, "|")(2)
If strTemp0 <> "" And strTemp1 <> "" And IsNumeric(strTemp2) Then
strTempWert = Split(strBerechnung(i), "|")(k + 1)
dblBerechneterWert = Berechnung(CDbl(strTempWert), strTemp0, strTemp1, CDbl(strTemp2))
Call ShapeEinrichten(vsShapeUnten, Format(dblBerechneterWert, "0"))
If blnExcel = True Then
xlBlatt.Cells(intExcelZeile + 1, intAnzahlDaten + k + 1).Value = dblBerechneterWert
End If
End If
End If

Und für den zweiten Block – etwas versetzt:

strTemp = vsSeite.PageSheet.Cells("User.Berechnung" & (k + 5)).ResultStrU("")
If strTemp Like "*|*|*" Then
strTemp0 = Split(strTemp, "|")(0): strTemp1 = Split(strTemp, "|")(1): strTemp2 = Split(strTemp, "|")(2)
If strTemp0 <> "" And strTemp1 <> "" And IsNumeric(strTemp2) Then
strTempWert = Split(strBerechnung(i), "|")(k + 1)
dblBerechneterWert = Berechnung(CDbl(strTempWert), strTemp0, strTemp1, CDbl(strTemp2))
Call ShapeEinrichten(vsShapeUnten, Format(dblBerechneterWert, "0"))
If blnExcel = True Then
xlBlatt.Cells(intExcelZeile + 1, intAnzahlDaten + intGruppe1 + k + 1).Value = dblBerechneterWert
End If
End If
End If

Sehen Sie es? Das ist ein „klassischer“ Kopierfehler. Gleicher Block; muss ein bisschen abgeändert werden – Variable ausgetauscht oder Wert erhöht. Hier wird der Wert erhöht: Aus k + 1 wird k + 5:

strTemp = vsSeite.PageSheet.Cells("User.Berechnung" & (k + 5)).ResultStrU("")

Allerdings: die zweite Korrektur habe ich übersehen:

strTempWert = Split(strBerechnung(i), "|")(k + 1)

muss heißen:

strTempWert = Split(strBerechnung(i), "|")(k + 5)

Und warum ist das lange Zeit nicht aufgefallen? Weil diese Fälle (die Verarbeitung der ersten Sektion oder die Benutzung des zweiten Block) nicht verwendet wurden …

Da leckt man einmal das Messer ab und alle gucken komisch! – Jens, 32, Chirurg.

Excelstammtisch. Wir diskutieren über Histogramme, Häufigkeitsverteilung und Stabdiagramme. Karin stellt eine interessante Frage: sie hat eine Reihe von Daten mit einem nicht-äquidistanten Abstand. Zu diesen Daten hat sie Werte. Wie kann sie diese in einem Diagramm darstellen?

Sofort fallen mir Datenreihen ein, die Datumsangaben verwenden. Man kann entweder die X-Achse als Datumsachse formatieren (also so tun, als wären die Jahreszahlen Datumswerte, das heißt: die Zahl 1985 wird als 07.06.1905 interpretiert; 2019 als 11.07.1905).

Oder man wählt den Diagrammtyp Punkt (XY):

Karin möchte Säulen haben. Auch kein Problem, oder? – Also: Datumsachse:

Allerdings: Ihre x-Werte liegen nicht im ganzzahligen Bereich, so dass sie als Tage interpretiert werden können, sondern liegen im Dezimalbereich. Hier scheitert die Datumsachse:

Schritt 1: Das Säulendiagramm wird erstellt:

Schritt 2: Datumsachse:

Die einzige Lösung, die wir gefunden haben, besteht darin, die Werte in den ganzzahligen Bereich „zu heben“ – in unserem Beispiel mit 1.000 zu multiplizieren. Dann klappt es:

Jahrelang wurde Kindern beigebracht für schönes Wetter alles aufzuessen. Und was haben wir jetzt? Dicke Kinder und Hitzewelle!

Erstaunlich! Aber erklärbar!

Ich erstelle eine Reihe an Werten, mit denen ich weiterrechne – beispielsweise „+“:

Ich lösche zwei Zeilen. Der Fehler #BEZUG! ist die Folge:

Ich kopiere diese fehlerhafte Zeile an einen andere Stelle und füge sie als Inhalt ein:

Ich lösche mit dem Ersetzen Befehl, indem ich #BEZUG! durch „nichts“ ersetze:

Klappt – alles weg. Sowohl in den Formeln (=#BEZUG!+#BEZUG!+D1) als auch in den Zellen

Ich zeichne diese Aktion mit dem Makrorekorder auf:

Der Code:

    Cells.Replace What:="#BEZUG!", Replacement:="", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2

Das Ergebnis:

Nichts wird gelöscht! Also doch per Hand. Beispielsweise so:

Sub Bezug_Loeschen_02()
     Dim xlZelle As Range
     For Each xlZelle In ActiveSheet.UsedRange
        If xlZelle.Text = "#BEZUG!" Then
           xlZelle.ClearContents
       End If
    Next
End Sub

Der Grund ist verständlich: Der Suchen- und Ersetzen-Befehl ist sehr mächtig. So wird auch in „26.10.2020“ der Wert „2020“ gefunden, obwohl in der Zelle eigentlich der Wert 44.130 steht. Eben: #BEZUG! ist eigentlich ein Fehlerwert (und kein Text). Er steht ja auch in der Mitte der Zelle. Suchen und ersetzen „übergeht“ diesen Datentyp; der VBA-Befehl Replace sucht (und ersetzt) einen Text (was nicht in der Zelle steht).

Und wer nun fragt: „Wer braucht denn so etwas?“ Letzte Woche habe ich eine Datei mit fehlerhaften Bezügen bekommen. Der Anwender hat ein Blatt von einer Datei in eine andere kopiert. Ich wollte diese nichtssagenden Fehler mit einem Makro „rausputzen“ – Klick auf Button sollte die Datei „bereinigen“.

Und so habe ich festgestellt, dass der Replace-Befehle nicht geeignet ist.

Weiß jemand von euch, auf welcher Seite in der Bibel man das Rezept findet für das Umwandeln von Wasser in Wein?

Ich erstelle gerade benutzerdefinierte Funktionen (UDF) für Excel mit Visual Studio. Dazu habe ich das Projekt Excel-DNA eingebunden. Ich erstelle eine Klasse und wundere mich, warum ich nicht das aktuelle Framework habe. Excel-DNA verlangt ein Framework ab 4.3:

Es lässt sich auch nicht nachinstallieren.

Ich habe lange gesucht, bis ich es gefunden habe. Ich darf nicht die .NET Standard Klassenbibliothek verwenden:

Dort sind die aktuellen Frameworks nicht vorhanden:

Sondern ich muss auf die korrekte Windows Desktop Klassenbibliothek zurückgreifen:

Dann klappt es:

Oder auch mit dem älteren Visual Studio. Diese nicht:

Sondern diese:

Verwirrend! Und dann funktionieren die UDFs:

Hast du schon wieder mein Deo benutzt? – Ich bin Robin Hood! Ich stehle und verteile es unter den Armen!

Ups, das ist mir noch nie aufgefallen! Warum? Weil ich SO nicht arbeite.

Aus einer Datenquelle wird mit PowerQuery eine Abfrage gestartet. Auf diese Liste wird eine Formel aufgesetzt, allerdings nicht in der Schreibweise

=KKLEINSTE(Artikel[Einzelpreis];Artikel[@Einzelpreis])

rechnet, sondern in der Bezugsschreibweise:

=KKLEINSTE($F$2:$F$78;ZEILE(A1))

Die Originaldatenquelle ändert sich – sie wird kleiner. Die Verbindung wird aktualisiert:

Die Folge: Die Formel wird angepasst, beispielsweise in:

=KKLEINSTE($F$2:$F$15;ZEILE(A1))

Fehlermeldungen sind die Folge.

Ändert sich die Liste erneut und wird nun länger, werde diese Bezugsfehler natürlich nicht korrigiert …

Fehler in der Berechnung sind die Folge.

Heißt: Wenn schon (intelligente/formatierte/dynamische) Tabellen – dann bitte die Bezüge auf diese Tabellen in Tabellenschreibweise und nicht in Bezugsschreibweise! Sonst gibt es Ärger!

Die einen gehen nachts feiern. Andere haben nachts wilden Sex. Und ich lade nachts mein Handy auf.

Seit ein paar Tagen habe ich in Microsoft 365 die neue Funktion LET. Damit kann man Formeln unter einem Namen ablegen, um sie (mehrmals) wieder zu verwenden. Beispielsweise so:

=ZELLE(„dateiname“)

oder besser:

=ZELLE(„filename“)

liefert den Namen und Speicherort der aktuellen Datei:

Benötigt man nun den Pfad, kann man das Zeichen „[“ suchen (oder finden):

=SUCHEN(„[„;D3)

liefert in unserem Beispiel 19. Bis ein Zeichen vor diesem Zeichen kann von links der Text herausgelöst werden:

=LINKS(D3;D4-1)

liefert hier: D:\Eigene Dateien\

Oder zusammengefasst:

=LINKS(ZELLE(„dateiname“);SUCHEN(„[„;ZELLE(„dateiname“))-1)

Darin wird nun zwei Mal die Funktion ZELLE(„dateiname“) verwendet. Man kann sie an einen Namen in der Funktion LET übergeben, beispielsweise an „Dateiname“:

=LET(Dateiname;ZELLE(„dateiname“);LINKS(Dateiname;SUCHEN(„[„;Dateiname)-1))

Allerdings: Das Ergebnis ist länger als die vorherige Funktion. Also ein kürzerer Funktionsname:

=LET(DN;ZELLE(„dateiname“);LINKS(DN;SUCHEN(„[„;DN)-1))

Das erhöht allerdings nicht gerade die Lesbarkeit!

Fazit: LET ist sicherlich eine nützliche und praktische Funktion. Allerdings kommt sie wohl erst bei sehr langen Formeln zum Einsatz. Und auch nur dann wenn Formelteile sich mehrmals wiederholen. Legt man diese Teil unter einem (langen) sprechenden Namen ab, wird das Ergebnis weder kürzer noch gut lesbar. Ich fürchte, sie wird wohl in den wenigsten Berechnungen in Excel in Microsoft 365 Einzug finden …

Erlkönig 2.0: Mein Vater, mein Vater, jetzt warte doch mal – ich hab hier im Wald kein Mobilfunksignal.

Lieber René,

mein Name ist Irmi, und ich bin begeisterte Leserin deiner Website. Ich wende mich an Dich, weil ich eine besondere Excel-Herausforderung habe und ich auch nach tagelanger Recherche immer noch nicht zu einer Lösung gekommen bin. Du hast bestimmt viel zu tun, vielleicht hast du aber einen schnellen Gedanken dazu, Du würdest mir damit sehr weiterhelfen.

Ich hätte gerne einen Linienchart, in dem Nullwerte (=0) als Lücken angezeigt werden und nicht so unschön auf den die x-Achse kracht, sobald ein Wert mal Null ist. Gibt es dazu eine einfache Lösung?

Habe schon einiges probiert, auch mit einer Hilfstabelle und die Nullwerte als leere Zellen anzeigen lassen, hat nicht funktioniert.

Wäre Dir wirklich sehr dankbar, wenn Du eine Idee hättest!

Ganz liebe Grüße Irmi

Hallo Irmi,

du musst die Nullwerte in den Fehlerwert #NV umwandeln (entweder mit einer WENN-Funktion oder durch suchen und ersetzen) – dann klappt es.

Excel kann zwar Leerzellen auf verschiedene Arten darstellen, aber leider nicht den Wert 0. Der ist halt die Zahl 0.

Schau mal:
https://www.excel-nervt.de/warum-haben-24-stunden-tankstellen-schloesser-an-den-tueren/

Hilft das?

Liebe Grüße :: Rene

Hallo René,

klasse, das hat geholfen! Super, ich hab tagelang darüber nachgegrübelt. Großes Dankeschön! 🙂

Ich bin wirklich begeistert, dass Du mir sofort geantwortet hast, nicht nur, dass ich wirklich eine Lösung dafür gebraucht hab, sondern dass Du mir einfach so hilfst, ohne mich zu kennen. Find das so richtig cool von Dir! Nochmals ganz großes Dankeschön 🙂 Weiterhin viel Erfolg und noch einen schönen Abend 🙂 Liebe Grüße Irmi

Bei meinem Heiligenschein blinkt schon wider die Inspektionsleuchte.

Ach, wie dumm. Eine Fehlermeldung in meinem VBA-Projekt:

Der Grund? Ich lese den Value der Zelle aus. Die Fehlermeldung #NV ist allerdings kein Value. Mit der Eigenschaft „Text“ kann man sie abfangen.

Und wie kommt diese Fehlermeldung nach Excel?

Nun – die Daten wurden aus einer (Access-)Datenbank gezogen. Diese wiederum holt sich die Informationen von Visio. Und dort wurde – durch ungeschicktes Kopieren und Einfügen der Fehler #NA erzeugt. Er wurde in die Datenbank als Text eingetragen – allerdings bei Excel ist ein Fehler die Folge.

Sechs Jahre lang habe ich keinen Alkohol getrunken, keine Zigaretten geraucht, keinen Sex gehabt. Dann wurde ich eingeschult.

Witzig: das Spreadsheet News Network erklärt humorvoll und clever den Fehler, der dem britischen Gesundheitsamt unterlaufen ist, bei dem Tausende von Covid-19-Testergebnisse „verloren“ gingen.

www.youtube.com/watch?v=zUp8pkoeMss&feature=youtu.be&fbclid=IwAR1tGHl5Azo0_lIiDjZXbnTbzTesAJZ0MmG5C_KWSiFo1DkHAtSIV76O4NA

Danke an Olaf Musch für diesen Hinweis.

Mir ist egal ob ich in die Hölle oder in den Himmel komme. Ich habe auf beiden Seiten Freunde.

Word ist manchmal auch recht anstrengend.

In der letzten Word-Schulung erkläre ich wie man ein Formular mit Eingabefeldern erstellt.

Ich erkläre, dass man die Felder auf ein gültiges Datum begrenzen kann:

Wir testen:

Prima! 2. Test:

Der dritte Test funktioniert. Man kann das Datum auch in der Form 1-10-20 (wie in Excel) eingeben:

Allerdings aus der Eingabe 31-11-20 wird:

Und jetzt das kleine Erstaunen: Verboten sind Angaben wie:

1–1
1,,1
31.11.2020
1o.1o.2o
l0.l0.2020

Jedoch wird umgewandelt:

1,1 wird zu 01.10.2020
31-11-20 wird zu 20.11.1931
1-1-1-1 wird zu 01.01.2001

Noch erstaunlicher ist die Begrenzung auf Zahlen:

Während Texte stillschweigend gelöscht werden (ohne Warnhinweis!) wird konvertiert:

1,,50 wird zu 0,01 € (5,
ebenso: 1,0,5
1.50 wird zu 150 €
1-50 wird zu 150 €
1oo zu 1,00 €
l00 zu 0,00 €

Sehr seltsam. Sehr inkonsequent und inkonsistent. Vor allem das stillschweigende Löschen von falschen Eingaben kann dazu führen, dass ein Formular nicht korrekt ausgefüllt wird.

Hör auf damit, wir müssen jetzt seriös wirken!

Ich habe eine Weile gebraucht, bis ich verstanden habe. Ich lese in der Mail:

Im Bereich I. Aktivitäten habe ich noch eine Auswertung gefunden, um fehlende Zeilen zu ergänzen:


durchschnittl. erledigte Besuchskontakte (pro Tag & Betreuer): oben angeführtes Excel Zeile 7 Spalte AN => für die Gesamtliste

und weiter unten:

Aus folgenden Excel können nachstehende Zeilen befüllt werden:



JC-/Studentenkonten Stk: (die Summe aus Jugendkonten und Studentenkonten )

Dann verstehe ich. Sie verwendet Lotus Notus Notes als Mailprogramm. Dort werden die Dateien IN die Mail eingefügt. In meinem Outlook werden die Anlagen oben angezeigt. Immerhin – in der Reihenfolge, in der sie in die Mail eingefügt wurden. Und so kann ich auch leicht die Datei finden, wenn sie schreibt:

Aus folgenden Excel können nachstehende Zeilen befüllt werden:

Na klar, kann man zum Frühstück schon Pralinen essen. Steht doch drauf: „Moin, Cherie“

Hallo Rene,

bin gerade ein wenig verwirrt aufgrund der Formel Nettoarbeitstage.INTL, vermutlich liegts bei mir und nicht an der Formel.

Ich nehme hier einfach mal den 12.10.2020 als Ausgangs- und den 19.10.2020 als Enddatum. Die Formel in E2 ist =NETTOARBEITSTAGE.INTL(A2;B2;11), mit dem Parameter 11 möchte ich die Sonntage ausklammern.

In D2 steht lediglich =TAGE(B2;A2).

Müssten sich die beiden Werte nicht eigentlich unterscheiden, da ein Sonntag dazwischen liegt?

Wenn ich das Ausgangsdatum weiter in die Vergangenheit setze, dann gibt es eine größere Diskrepanz zwischen den beiden Formelergebnissen, z.B. beim 01.09.2020

Was mache ich denn falsch, weißt du das?

Viele Grüße, Dominic

Moin Dominic,

schau mal:

TAGE rechnet wie die Differenz wie DATEDIF: Ende – Anfang. Klar: 19 – 12 = 7.

NETTOARBEITSTAGE und NETTOSARBEITSTAGE.INTL ist die Anzahl der Arbeitstage in einem Datumsbereich außer Sa/So (NETTOARBEITSTAGE) oder außer dem gewählten Tag / den gewählten Tagen.

Heißt: wenn Anfang und Ende gleich sind liefert TAGE immer 0, NETTOARBEITSTAGE meistens 1 – eben: ein Tag liegt in diesem Zeitraum.

Für deinen größeren Zeitraum ist das auch korrekt:

Liebe Grüße

Rene

Pflanze im Internet bestellt. Email erhalten: „Ihre Bestellung ist eingegangen.“ Neue bestellt.

Wer mit Datenbanken arbeitet, der würde in dieser Liste sofort eine n:m-Beziehung erkennen: einer Rebsorte sind mehrere Länder zugeordnet. In einem Land werden es mehrere Rebsorten angebaut.
(zugegeben: das Original-Beispiel, das mir die Teilnehmerin zeigte waren Firmendaten aus dem Bereich firmeninterne Weiterbildungen – aber die Struktur war die gleiche)

Auch wenn die Länder durch einen Umbruch in eine Zelle eingefügt wurden, kann man sie mit dem Assistenten „Text in Spalten“ oder mit PowerQuery trennen.

Allerdings sollen nun Zuordnungen zu den Ländern getroffen werden. Das heißt: in einer Zeile steht ein Land oder mehrere Länder NEBENEINANDER.

Zum Glück stellt PowerQuery den Assistenten entpivotieren zur Verfügung:

Damit werden nicht nur die Zeilen n Mal wiederholt, sondern die zugehörigen Länder stehen auch UNTEREINANDER, was zur Weiterverarbeitung (SVERWEIS oder was auch immer) hervorragend geeignet ist:

Tipps gegen Schimmel im Badezimmer: Langsam mit einer Karotte ins Bad gehen. Dann zum nächsten Pferdehof locken.

Sind mehrere Texte in einer Zelle untereinander geschrieben, kann man sie mit dem Assistenten Daten / Text in Spalten trennen.

Und die Blitzvorschau? Ein Versuch ist es wert:

Sieht gut aus – jedoch:

Okay zu lang. Na ja! Und der zweite Wert? Versagt, weil in der zweiten Zeile nur ein Wert steht. Die Anzahl der Werte, die sich untereinander befinden, ist unterschiedlich groß:

Auf ein Neues: PowerQuery. Seit einigen Versionen stellt PowerQuery – anders als der Assistent „Text in Spalten“ als Trennzeichen den Zeilenumbruch zur Verfügung:

Splitter.SplitTextByDelimiter(„#(lf)“

Klappt! Klappt hervorragend!

Können Sie M? Da wir wissen, dass der Zeilenumbruch in Excel dem Wert 10 entspricht hätte man auch verwenden können:

Character.FromNumber(10)

Also:

„Split Column by Delimiter“ = Table.SplitColumn(Source, „Anbauländer“, Splitter.SplitTextByDelimiter(Character.FromNumber(10), QuoteStyle.Csv), …

Klappt auch:

Wir müssen ja sowieso denken. Warum dann nicht gleich positiv?

Irgendwie doof.

Mit der Tastenkombination [Strg] + [J] kann man in den Dialogen „Suchen“ und „Text in Spalten“ ein Zeichen erzeugen, das den manuellen Zeilenumbruch repräsentiert. Ein blinkender Punkt ist die Folge. Allerdings lässt der Assistent „Text in Spalten“ nur ein Zeichen zu, so dass man nicht mehr in das Eingabefeld klicken kann und ein anderes Zeichen eintragen kann, wenn der Assistent ein zweites Mal Daten trennen soll:

Erste Lösung: in das Eingabefeld klicken. Das Zeichen befindet sich nicht vor dem Cursor, sondern dahinter. Also mit der Taste [entf] löschen und nicht mit Backspace (Rückschritt)

Zweite Lösung: „mit Anlauf“. Man kann das Kontrollkästchen „Andere“ aktivieren und dann mit der Tabulatortaste in das rechts neben stehende Textfeld springen.

Ich finde den blinkenden Punkt ein wenig unglücklich gewählt als Repräsentant des Zeilenumbruchs. Man sieht ihn schlecht oder gar nicht.

Neben dem Assistenten „Text in Spalten“ – gibt es noch weitere Möglichkeiten am Zeilenumbruch zu trennen? Morgen mehr …

Lange Rede. Gar kein Sinn.

Immer mehr Medien berichten, „wie ein Excel-Fehler 16 000 britische Corona-Fälle verschwinden ließ“:

https://www.heise.de/news/Excel-Datei-voll-16-000-Diagnosen-fuer-Covid-19-in-Grossbritannien-nachgemeldet-4920380.html?fbclid=IwAR2JItI853Rg41P4–X1A-0XZTPnUabpEdZ9z0nSYF-10B9F4VeLHnQuXso

oder:

https://www.sueddeutsche.de/digital/excel-microsoft-coronavirus-grossbritannien-1.5056482?fbclid=IwAR3NT0BO7GsqHtXgclkN2gb7jf3hZrqVV129VQKifRAG61CMx3DHsZhrFeI

oder:

https://t3n.de/news/excel-verursacht-corona-panne-1326375/?

oder:

https://www.faz.net/aktuell/feuilleton/pandemie-datenpanne-in-england-die-tabelle-ist-voll-16989088.html?fbclid=IwAR1W0MHXBshgE5vXZMv9UM-zuga68DVkfA2jm_qSA8TxxwGRCMeab9ve3BQ

Die Häme und den Spott brauche ich nicht zu wiederholen.

Ein Dankeschön an Bettina Berger und Andreas Thehos, die mich darauf aufmerksam gemacht haben.

Suche Disneyprinzen, dessen Gesang Kleintiere inspiriert meine Wohnung zu putzen.

Daten sollen verknüpft werden; Daten sollen getrennt werden:

In mehreren Zellen befinden sich durch einen Zeilenumbruch getrennte Daten. Sie sollen in eigene Spalten geschrieben werden. Man kann den Zeichenumbruch (ZEICHEN(10)) durch ein anderes Zeichen ersetzen, das dann im Assistenten Daten / Text in Spalten verwendet wird.

Oder – die Teilnehmerin, die mir diese Frage stellte, kannte die Antwort – man kann die Tastenkombination [Strg] + [J] nicht nur im Suchen-Dialog, sondern auch in diesem Assistenten verwenden.

Angezeigt wird (auch hier) ein blinkender Punkt. Er repräsentiert das Zeichen für den Zeilenumbruch. So kann man auch die Daten trennen:

Diese Lösung hat allerdings einen klitzekleinen Haken, den ich morgen verraten werde.

Alkoholtest gemacht – vertrage alle gängigen Sorten.

Es fing ganz harmlos an. Excelschulung. Genauer: vor der Excelschulung. Eine Teilnehmerin rief mich zu sich. Sie hat eine Liste, bei der Daten mit einer anderen Liste verknüpft werden sollen. Nichts leichter als !?!

Die „Anbauländer“ (Spalte H) sollte mit einer anderen Liste verknüpft werden. Ein genauer Blick auf die Daten lieferte folgendes Ergebnis: In Spalte H stand nicht nur ein Land, sondern manchmal eines, manchmal mehrere. Untereinander …

Mein erster Gedanke war: man kann den Zeilenumbruch durch ein anderes Zeichen ersetzen und dann damit trennen. Dass der Zeichenumbruch in Excel der Zahl 10 entspricht, weiß man, oder kann man leicht ermitteln mit:

=CODE(TEIL(H2;LÄNGE(„Deutschland“)+1;1))

Also wird gewechselt:

Anschließend markiert, kopiert und mit Daten / Text in Spalten getrennt. Voilà.

Die Teilnehmerin hatte eine bessere Idee. Ich verrate diesen Vorschlag morgen.

Am Ende der Nerven ist oft noch zu viel Kind übrig.

Hallöchen René,
Ich habe eine Frage zu Excel, ich hatte eine adresstabelle mit Kunden aufgelistet und habe die schon sortiert und alle Kunden vor 2017 aussortiert, nur hat die Liste jetzt aber vorne die Zahlen nicht aktualisiert.
Heisst an erster Stelle steht nicht wie gewohnt die „1“ sondern die „16“ gibt es eine Funktion um die durchnummerierung zu erneuern?
Vielen Dank im Voraus
Julie

Hallo Julie,
du willst die Liste neu nummerieren lassen, oder? Die Antwort: Entweder die schreibst die erste Zelle eine 1, in die zweite eine 2, markierst beide und ziehst nach unten:

Oder du verwendest die Funktion ZEILE() – sie liefert die Zeilennummer. Damit nun in A2 die Zahl 1 steht, schreibst du: =ZEILE()-1

Dann kann man ganz links die Zahlen nicht ändern?
Haben die Tabelle jetzt einfach kopiert und neu eingefügt in einer leeren Liste.

Ach – du willst die Zeilennummern ändern? – Das geht leider nicht!
Gegenfrage: warum willst du die Nummern ändern? Jede Zelle hat einen festen Namen, beispielsweise C4, A3, R47 …

Nun – ich will wissen, wie viele Namen noch in der Liste stehen.

Ah, verstanden. Na – da kannst du entweder nach dem Filtern unten links in der Statuszeile nachschauen – dort wird die Anzahl der gefilterten Daten angezeigt:

oder setzt unter (oder neben oder über) die Tabelle die Funktion TEILERGEBNIS – sie zählt nur die sichtbaren Zellen, wenn du den Parameter 2 oder 3 verwendest:

Hormone – ab in die Ecke! Und nachdenken, was ihr da gerade gemacht habt!

Excelschulung. Ich zeige Tastenkombinationen. Mit [Strg] + [A] markiere ich einen zusammenhängenden Bereich:

Mit [Umschalt] + [Strg] + [#] „springe“ ich die vier Ecken des Bereiches an. Warum? So kann ich schnell berausfinden, ob Leerzeilen oder Leerspalten vorhanden sind; ob sich Teile der Liste darunter oder daneben befinden – getrennt durch eine leere Spalte oder Zeile.

Eine Teilnehmerin meldet sich und sagt, das in ihrem Bereich plötzlich nur Datumsangaben zu sehen sind:

Ich schmunzle und antworte: „Sie müssen [Umschalt] + [Strg] + [#] drücken. Sie haben nur [Strg] + [#] gedrückt! Das formatiert die Zellen von Zahlenformat „Datum“.

Mein Mann macht jetzt Home-Office. Ich stelle fest: erstens: er kann sprechen. Zweitens: er kann nett sein!

Ich habe ja schon mehr als einmal über verbundene Zellen geschimpft. Ich tue es heute mal wieder!

Ich bin gestern beim VBA-Programmieren (mal wieder) über verbundene Zellen gestolpert. Ich muss wissen, wie viele Spalten die Liste hat (weil ich in Zeile 4 den Begriff „Summe“ suche).

Der Befehle
MsgBox ThisWorkbook.ActiveSheet.Range("A1").SpecialCells(xlCellTypeLastCell).Column
liefert 1!
Allerdings
MsgBox ThisWorkbook.ActiveSheet.Range("A1").CurrentRegion.Columns.Count
liefert 9! Ebenso:
MsgBox ThisWorkbook.ActiveSheet.UsedRange.Columns.Count

Ein Tag ohne „excel-nervt“ ist zwar möglich – aber wer will das schon?

Frage an den Experten: „Bei einigen der erstellten Exceltools hätte ich gerne den VBA Code geschützt. Aber leider ist  der VBA Codeschutz sehr schwach, so dass ich es unterlassen habe und auch keine externen Programme hierfür erworben habe. Einem Kunden eine Exceldatei als .exe zu übergeben ist wohl nicht gerade das Richtige 😉

Letzthin habe ich aus Neugierde den Exactplanner zu Testzwecken heruntergeladen. Und wie ich bin, schaue ich mir immer zuerst mal an, ob die Datei auch VBA Code hat und wie der aussieht.

Aber diesmal habe ich eine Überraschung erlebt.

«Das Projekt kann nicht angezeigt werden!»

Oder war es «das Modul kann nicht angezeigt werden»?

Leider kann ich keinen Screenshot zeigen, da meine Testzeit abgelaufen ist.

Jedenfalls stand im Modulname ManInWeb. Nach einigem Googlen fand ich zwar heraus, dass du ManInWeb bist, aber nicht, wie man VBA-Projekte narrensicher schützen kann.“

Hallo,

Ja, ich hatte eine Zeit lang meine VBA-Projekte geschützt, wo dann erscheint „Das Projekt kann nicht angezeigt werden.“
Das ist eigentlich ganz einfach: Unviewable+ ist das Stichwort. Findest Du hier:

https://www.spreadsheet1.com/unviewable-vba-project-app-for-excel.html

Kostet allerdings etwas. Ich hatte damals an der Beta und den Übersetzungen mitgewirkt. Mittlerweile kann zwar Unviewable+
auch geknackt werden, der Schutz ist aber immer noch so hoch, dass in geschätzt 99 % der Fälle keiner weiss, wie. Geht auch
nur über Zusatztools und nicht den DPB-Trick. Der Vorteil von Unviewable+ ist, dass es keiner externen Tools für die geschützte
Datei mehr braucht, also z.B. das Erstellen von Exe-Dateien usw. nicht nötig ist.

Jep, ich bin in Foren und generell mit dem Nicknamen „Maninweb“ bekannt. Fun fact, da gibt’s eine Story dahinter: kennst Du
den Film MenInBlack (1)? Damals, hatten meine Frau und ich nach einem Domainnamen gesucht und in Analogie zum Filmtitel
dann Maninweb und Womaninweb ersonnen. Tja, dabei ist’s geblieben – wenn auch nun nur als Nicknames.

Excel & VBA ist so seit Mitte der Neunziger mein Ding. Vorher habe ich in Pascal, C, C++ inkl. OOP DOS und Windows-Apps
geschrieben. Und dann Excel & VBA entdeckt und bin seitdem dabei geblieben – seit 2005 dann auf freiberuflicher Basis.
In der Regel beinhalten meine Excel-Anwendungen VBA, sind meist multilingual verfügbar und haben eine Datenbank-
Anbindung im Hintergrund. Ab und zu mache ich auch Schulungen (Excel), meist Inhouse.

Beste Grüße aus Aachen,
Mourad Louha

Endlich mal wieder Sport gemacht. Ritter Sport. Zwei Tafeln.

Outlook-Schulung in einer Firma. Im Schulungsraum.

Nach einer Weile fragt eine Teilnehmerin, warum ihre ungelesenen Mails nicht fett dargestellt werden. Normalerweise sieht der Posteingang folgendermaßen aus:

Bei ihr jedoch so:

Ich prüfe die Grafikauflösung des Bildschirms, die Regeln von Outlook, die Optionen … nichts! Die Mails sind wirklich ungelesen, wie ein Blick ins Kontextmenü zeigt. Man könnte sie auf „gelesen“ setzen:

Irgendwann dämmert es mir. Ich schaue in den Bedingten Formatierungen der Ansichtseinstellungen nach. Und tatsächlich: DORT werde ich fündig. Die Bedingung für die ungelesenen Mails wurde deaktiviert.

Wer macht denn so etwas? Nun – der Teilnehmer oder die Teilnehmerin, der oder die zuletzt den Computer benutzt hat, und diese Option nicht mehr zurückgestellt hat …

Manchmal nervt auch Outlook!

Hat das Blümchen einen Knick; war der Schmetterling zu dick.

Hallo Rene,

wir erstellen in unserer Firma oft lange Excellisten mit ebenso langen und formatierten Texten. Leider finde ich in Excel nicht, wo man die Einzüge für Text einstellen kann, also so, dass die Aufzählungszeichen links stehen bleiben und die Texte etwas weiter rechts eingerückt sind. So wie in Word oder PowerPoint:

Text in Word

Geht das in Excel nicht?

Hallo Barbara,

sorry – das geht nicht. Du kommst schnell beim Formatieren in Excel an Grenzen. Excel kennt weder Einzüge, noch Zeilenabstand oder Silbentrennung:

Bei den Aufzählungszeichen könnte man mit einer Hilfsspalte schummeln …

Aber: das ist viel Arbeit! Willst du dir das wirklich antun?

Ich habe damit aufgehört, frühmorgens am Waldrand zu joggen. Nicht dass mich ein Jäger aufgrund meiner Eleganz mit einem Reh verwechselt.

Pia Bork beschwert sich (zu recht!) darüber, dass Word online keine Feldfunktionen kennt.

https://bork.blog/2020/09/09/word-feldfunktionen-und-die-web-app/

So kann man im online-Word weder ein Inhaltsverzeichnis erstellen noch aktualisieren, wenn es in Word Desktop erstellt wurde.

Schade eigentlich!

Übrigens: mein Excel-Formelbuch habe ich natürlich Anfang 2020 in der Destop-App erstellt:

Taschenbuch : 576 Seiten
ISBN-10 : 3746064872
ISBN-13 : 978-3746064871
Größe und/oder Gewicht : 17 x 3.7 x 22 cm
Herausgeber : Books on Demand; 7. Auflage (13. Januar 2020)
22,00 Euro

Herr Doktor, ich bin Hypochonder. – Ach was, das bilden Sie sich nur ein!

Lieber René,

seit einiger Zeit habe ich ein Problem mit Pivot-Tabellen und wüsste gern, ob Du mir vielleicht helfen kannst.

Früher habe ich häufig die Funktion Berichtsfilterseiten anzeigen genutzt, aber irgendwie funktioniert es nicht mehr. Mir wird das Feld immer ausgegraut angezeigt.

Ich weiß nicht woran es liegt. Dr. Google konnte mir erstaunlicherweise auch nicht helfen, ich bin komplett ratlos.

Ich erzeuge regelmäßig Auswertungen für acht verschiedene Regionen und würde die Funktion dafür gerne verwenden, sodass jede Region ihren eigenen Reiter hat.

Ich hab mal eine Mini-Beispieldatei angehangen.

Es wäre toll, wenn Du das Brett von meinem Kopf entfernen könntest!

Liebe Grüße aus Köln,

Sabrina 

Hallo Sabrina,

ich glaube, das ist eine einfache Frage:

Berichtsfilterseiten werden nur dann angeboten, wenn die Daten NICHT den Datenmodell hinzugefügt wurden!

Liebe Grüße

Rene

Wie viel Alkohol im Blut muss man haben, damit die nervigen Stechmücken daran sterben? Ich geh jetzt in die Offensive!

Hallo Rene,

Wie lautet denn der Befehl, zu prüfen, ob es in einer Datei Verknüpfungen gibt? Müsste irgendwas mit .LinkSources sein, aber wissen tu ichs nicht…

Viele Grüße, Dominic

Hallo Dominic,

ja LinkSource. Ich habe damals überprüft:

Application.EnableEvents = False ‚ — Falls die zu öffnende Datei Autostart-Makros enthält, sollen diese nicht geöffnet werden.
Err.Clear
Application.DisplayAlerts = False‘ — bei Excel 4.0-Dateien erscheint ein Warnhinweis!
Set xlDateiZumÖffnen = Application.Workbooks.Open(objDatei.Path, UpdateLinks:=0, Password:=“Renes Quatschwort“) ‚ — Datei öffnen
Application.DisplayAlerts = True‘ — bei Excel 4.0-Dateien erscheint ein Warnhinweis!
‚ xlDateiZumÖffnen.UpdateLinks = xlUpdateLinksNever ‚ — schalte die Warnmeldungen aus, wenn Fehler kommen, die darauf hinweisen, dass Links nicht vorhanden sind. -> leider nein!
If Err.Number = 0 Then
If Not VBA.IsEmpty(xlDateiZumÖffnen.LinkSources(xlExcelLinks)) Then
For i = 1 To UBound(xlDateiZumÖffnen.LinkSources(xlExcelLinks))
xlZelleZeiger.Offset(0, 6 + i).Value = xlDateiZumÖffnen.LinkSources(xlExcelLinks)(i)
Next
If UBound(xlDateiZumÖffnen.LinkSources(xlExcelLinks)) > 0 Then
xlZelleZeiger.Offset(0, 6).Value = _
UBound(xlDateiZumÖffnen.LinkSources(xlExcelLinks))
If Me.chkKaputt.Value = True Then
For i = 1 To UBound(xlDateiZumÖffnen.LinkSources(xlExcelLinks))
If VBA.Dir(xlDateiZumÖffnen.LinkSources(xlExcelLinks)(i), vbNormal) = „“ Then
xlZelleZeiger.Offset(0, 5).Interior.Color = vbBlack
End If
Next
End If
End If ‚ — trage die Anzahl der gefundenen Links ein und markiere schwarz
End If

[…]

An anderer Stelle überprüfe ich die Links (sie könnten ja „kaputt“ sein:

blnDateiSchutz = False
strLinkKaputt = „“
intAnzahlVerknuepfungen = 0
blnKaputt = False
If Not IsEmpty(xlDateiZumÖffnen.LinkSources(xlExcelLinks)) Then
intAnzahlVerknuepfungen = UBound(xlDateiZumÖffnen.LinkSources(xlExcelLinks))
For i = 1 To intAnzahlVerknuepfungen
strLink = xlDateiZumÖffnen.LinkSources(xlExcelLinks)(i)
If VBA.Dir(strLink, vbNormal) = „“ Then
strLinkKaputt = strLinkKaputt & „###“ & strLink
If strLink Like „“ & Me.txtQuelle.Value & „“ Then
‚ — alles paletti
Else
blnKaputt = True
End If
End If
Next
End If

Liebe Grüße

Rene

… viele Links …

Nur noch ein paar Stunden blöd gucken und dann ist Feierabend.

Hallo Rene,

vielleicht ist das so ein Ding, was du direkt weißt. Ich öffne via Makro eine Datei. In dieser Datei befinden sich Verknüpfungen zu externen Mappen, die zwar kein Mensch braucht, aber die nun mal drin sind, weil die Dateien immer vom Kunden kommen und der damit wer weiß was macht. 😉

Beim öffnen erscheint immer dieser Hinweis und das Makro läuft natürlich nicht weiter:

Kriegt man das irgendwie weg? Bzw. gibt es einen Befehlt der automatisch „Aktualisieren“ oder „Nicht aktualisieren“ auswählt?

Application.DisplayAlerts = False greift hier nicht.

Danke dir und viele Grüße,

Dominic

####

Hat sich schon erledigt – UpdateLinks:=0 nach dem „Open“-Befehl. Manchmal ist der Makro-Rekorder schon ganz praktisch.

####

Hallo Dominic,

ich muss nur ein bisschen warten – und schon lösen die Leute alleine ihre Probleme.

Ich hätte es trotzdem gewusst.

Hintergrund: Die IT einer großen Behörde beschließt im Frühjahr 2018 das Laufwerk P von allen Anwendern zu löschen. Ab jetzt soll es nur noch Q geben. Jeder Anwender soll seine Dateien von P nach Q kopieren, dabei anschauen, ob er die Dateien noch braucht …

Nach fünf Monaten haben sie festgestellt: ups – einige Tausend Dateien haben ja Verknüpfungen auf andere Dateien auf Laufwerk P. Dumm! Die Verknüpfungen funktionieren nicht mehr.

Ich habe ihnen ein VBA-Tool geschrieben:

* liste alle (Excel-)Dateien auf

* Anwender wählt einen Ordner und legt fest welcher Ordner durch welchen ersetzt werden all. Bspw.: P:\Eigene Dateien\Controlling\Excel\2017 durch Q:\Eigene Dateien\ Controlling\Excel\2017

* öffne alle Excelmappen in diesem Ordner (und Unterordner – kann ausgewählt werden)

* prüfe, ob Verknüpfungen drin sind (in Tabellenblättern, Namen, Bedingten Formatierungen, Datenprüfungen) und putze

* speichere und schließe

Problem beim Öffnen:

* Verknüpfungen (wie du beschreibst)

* AutoOpen-Makros

* geschützte Dateien oder Blätter (mit oder ohne Kennwort)

uff!

Einige Programmierstunden, einige Nachbesserungen, … am Ende habe ich nie mehr etwas gehört … wahrscheinlich konnten sie alle (?) Dateien öffnen und putzen.

Liebe Grüße Rene

Fledermäuse fliegen mit Ultraschall. Das ist ein Navi ohne Gequatsche.

Auf facebook werde ich angeschrieben:

»Hallo Rene habe Dich in einem Werbefilm gesehen. Axel 365. Gruss Raphael«

Ich überlege und antworte.

»Welcher Werbefilm, Raphael, hilf mir mal bitte! LG :: Rene«

Welchen Axel meint er wohl? Den Ortsteil von Terneuzen in den Niederlanden? Den Sprung im Eiskunstlauf?

Den Citroën?

Achsel 365?

Dann dämmert es mir:

»Meinst du Excel 365?«

»Ja genau«

»Ah – wahrscheinlich LinkedIn … Für die arbeite ich ab und zu …

Mache beispielsweise so etwas:

https://de.linkedin.com/learning/excel-tipps/willkommen-zu-excel-tipps?autoplay=true&trk=learning-course_table-of-contents_video&upsellOrderOrigin=default_guest_learning

»Ja genau und da habe ich mir gedacht dich kenne ich doch und siehe da ich hatte recht«

Made my day!

Sex im Bett ist schon irgendwie eklig. Ich meine, das ist doch der Ort, wo ich esse!

Hallo Rene,
merci für den Screen und deinen Text. Kurz der Hintergrund zu meiner Frage: Ein Kunde fragte vorletzte Woche:
„Wenn er das Dropdown-Dreieck sehe, so würde er dann mindestens zwei Optionen erwarten.
x und ein leerer Eintrag.“
Vermutlich nehme ich deine Lösung: Somit nur das „X“ auswählen, ansonsten muss er den Eintrag eben löschen.
Es wäre überaus nett gewesen, wenn das ganze über das Zellenfeature gegangen wäre …
… ich wollte ggf. auf den Name verzichten.
Dann sind wir ‚mal gespannt, was uns nächste Woche so erwartet.
Ich wünsche dir also einen guten Wochenstart
Jürgen

Hallo Jürgen,
der Kunde ist König!
Meiner gibt sich mit DIESER Lösung zufrieden.

Man könnte aber auch eine Auswahl machen.
Datenüberprüfung: keine Angabe;x

Und dann mit einer Bedingten Formatierung das „keine Angabe“ ausblenden (benutzerdefiniertes Zahlenformat: ;;;

Kindererziehung ist nicht leicht. Und es muss auch eine Strafe geben. Aber Pfannkuchen aus Dinkelmehl finde ich zu hart.

Hallo Rene,

sei gegrüßt in den Abendstunden.
Ich hoffe, dass es dir soweit gut geht und dein EXCEL-Kurs für Einsteiger bald abgehalten werden kann.

Mit dieser Mail kommt nur eine fachliche Frage zu EXCEL:

Ich realisiere auf einer Zelle ein Dropdown mit einer Datenauswahl bzw. Überprüfung.
Als Datengrundlage nutze ich ein x und ein Leerzeichen und möchte auf die Verwndung eines Namens verzichten.
D.h.: Im WWW finde ich eine Lösung (http://www.office-loesung.de/ftopic332490_0_0_asc.php) über die Schritte:

Einstellungen / Listung / Quelle

den Vorschlag:

‚; x

Gibt es noch andere Lösungen?

Dankeschön & Gruß Jürgen

Hallo Jürgen

willst du wirklich als Auswahl ein Leerzeichen und ein x haben?

Ich habe so etwas schon gemacht – nur mit x. Wenn der Anwender es nicht haben will, kann man es löschen (Taste [entf]).

Wie auf office-loesung beschrieben – elegant ist das ‚ nicht gerade.

Alternative: Namen – das willst du nicht.

Alternative: Wähle zwei Zellen aus. Im unteren steht ein „x“, die obere Zelle ist leer. Oder mit einem Leerzeichen gefüllt.

Liebe Grüße

Rene

Oh, schon September! Heizung an, Blätter fegen, Lebkuchen kaufen. Frohes Neues Jahr!

Erstellt man eine Excelliste mit Zahlen, die als Datum oder als Währung formatiert sind und verwendet diese Liste als Basis eines Word-Serienbriefs, werden die Zahlenformate in Word nicht übernommen.

Drei Lösungen für dieses Problem habe ich gefunden:

  1. In Excel eine Hilfsspalte einfügen, die die Zahlen mit der Funktion TEXT in einen Text umwandelt. Er wird übernommen.
  2. In Word Schalter verwenden, um die Zahlen zu formatieren. Beispielsweise: {MERGEFIELD Geldbetrag \# $####,0.0} oder {MERGEFIELD zahlbar_bis \@ „TT.MM.JJJJ“}
  3. DDE

Diese drei Optionen habe ich in diesem Blog mehrfach beschrieben, beispielsweise in:

https://www.excel-nervt.de/word-serienbriefe/

https://www.excel-nervt.de/ich-sags-jetzt-nur-noch-einmal/

https://www.excel-nervt.de/kann-spuren-von-erdnuessen-und-anderen-nuessen-enthalten/

Am vergangenen Wochenende „musste“ ich folgende Mail schreiben:

Hallo Angelika,

DDE ist (noch) in Word drin – Du hast recht – aber es wird wohl nicht mehr unterstützt.

In den Optionen / Erweitert findest du ganz unten in der Gruppe „Allgemein“ die Option „Dateiformatkonvertierung beim Öffnen bestätigen“.

Dann DDE (für Excel) ausgewählt.

In Word und Excel 2016 funktioniert das noch – allerdings: jetzt in Office 365 nicht mehr („Word konnte keine neue DDE-Verbindung zu Microsoft Excel herstellen, um die aktuelle Aufgabe zu beenden.“)!?!

Also bleiben nur noch zwei Möglichkeiten für Währung und Datum: Schalter in Word oder Funktion TEXT in Excel.

Und – was meinst du: nachher Mittag essen gehen?

Liebe Grüße  

René

Jahrelang hat man uns eingeredet, dass nach 18 Uhr gegessene Kohlenhydrate dick machen. Und jetzt kommt raus: Kohlehydrate wissen gar nicht, wie spät es ist.

Hallo Rene!

Nach längerer Zeit wieder eine Bitte!

Durch den Corona-Virus musste ich die Termine für meine ABO-Vorstellungen selbst zusammenstellen.

Die Auswahl der Stücke war in ‚ABO Stücke‘ bald erstellt. Mit Pivot habe ich mir die Theaterstücke zusätzlich unterschiedlich angeordnet. 

In diesen Tabellen wollte ich die Zellen färbig (Der Leuchtturm) markieren, die in ‚ABO Stücke‘ grün sind. Das war mir nicht möglich.

Im Internet habe ich entdeckt, dass eine Zellfärbung in der Pivot-Tabelle nur mit den dortigen Daten möglich ist.

Nachdem Excel so viele Möglichkeiten bietet die Daten aufzubereiten und darzustellen meine oben erwähnte Bitte

um eine Lösung.

Mit freundlichen Grüßen

Peter

Hallo Peter,

das geht so nicht. Excel kann nicht per Formel Formatierungen abfragen.

Du benötigst im Tabellenblatt „ABO Stücke“ eine Hilfsspalte (bspw. Premiere: ja/nein)

und kannst dann mit einer Formel in der bedingten Formatierung anzeigen lassen:

=UND(INDEX(‚ABO Stücke‘!$F:$F;VERGLEICH($A15;’ABO Stücke‘!$D:$D;1))=“ja“;
B$14=INDEX(‚ABO Stücke‘!$B:$B;VERGLEICH($A15;’ABO Stücke‘!$D:$D;1)))

wirf mal einen Blick auf die Datei – ich habe drei Mal „ja“ eingefügt.

Liebe Grüße Rene

Hallo Rene,

danke für die schnelle Hilfe und den Hinweis.

Da stand ich auf der Leitung.

Klar, dass Excel nur mit Zahlen und Buchstaben arbeiten kann. Die Auswahl mit farbiger

Zelle ist optisch leichter zu überblicken, darum habe ich sie angewendet aber nicht bedacht,

dass Pivot natürlich einen ‚echten‘ Wert benötigt.

Mit besten Grüßen Peter

gerne, Peter,

stimmt: EXCEL kann nur Zahlen und Texte verarbeiten. Mit VBA hätte man die Möglichkeit zu überprüfen:

If Zelle.Interior.Color = …

Liebe Grüße Rene

Ich hätte gerne den Schokoriegel mit dem Löwen. – Lion? – Nein, kaufen!

Ich bereite gerade eine Excelschulung vor. Dabei bin ich über einen Artikel von Andreas Thehos gestolpert. Er beschreibt folgenden Bug in Excel:

Angenommen man hat eine Tabelle mit Berechnungen und wandelt sie in eine intelligente Tabelle um. Dabei werden in Bezügen der eigene Tabellenblattname genannt.

Sortiert man nun diese Tabelle, beispielsweise nach Spalte C (Radius), so wird die berechnete Spalte nicht mitsortiert.

Für „normale“ Listen habe ich diesen Bug hier auf excel-nervt.de schon mehrfach beschrieben. Das Erstaunlich ist, dass dieses Phänomen auch bei intelligenten Tabellen eintritt, die doch eigentlich die Aufgabe haben sollten, die Zeilen zusammenzuhalten.

Danke an Andreas Thehos für diesen Hinweis.

Ich habe den Wecker wieder zurückgebracht. Er macht morgens so laute Geräusche. Das raubt mir den Schlaf.

Prosa oder Lyrik?

Das Verhalten von langen Text in Zellen ist folgendes:

Schreibt man einen langen Text in eine unformatierte Zelle, fließt der Text über den rechten Zellenrand hinaus (bei allen Schriften, die von links nach rechts laufen):

Schaltet man einen Textumbruch (früher: Zeilenumbruch) ein, fließt der Text nach unten.

Okay – ich würde wahrscheinlich die Spalte verbreitern.

Schreibt man dagegen einen langen Text in eine Zelle und bricht die Zeilen mit einem Zeilenumbruch ([Alt] + [Enter]) um, schaltet Excel automatisch die Formatierung „Textumbruch“ ein:

Schaltet man den Textumbruch aus, fließt der Text nach rechts weiter über den Zellenrand hinaus. Steht in der Zelle daneben Text (beispielsweise ein Leerzeichen), wird nur der Text der Zelle angezeigt:

Den restlichen Text kann man auch verstecken, indem man die Zeilenhöhe verringert. So kann der Textumbruch eingeschaltet bleiben:

Und die restlichen 12.000 Zeichen werden nicht angezeigt.

Übrigens: die Obergrenze der Zeichenzahl einer Zelle bei Excel liegt bei 32.767 Zeichen. Die maximale Zeilenhöhe bei 409 Punkt:

Hätte der Mensch die Sprungkraft eines Flohs, könnte er 90 Meter weit und 50 Meter hoch springen. Stellen Sie sich mal vor, was passieren würde, wenn im Supermarkt eine zweite Kasse geöffnet wird!

Heute mal nichts zu nörgeln. Heute bin ich begeistert.

Auf der Seite von Sam Radakovitz

http://samradapps.com/

habe ich einen Date-Picker gefunden. Sehr praktisch das Teil – es wird in der Registerkarte „Start“ angezeigt und schlägt bei Datumsangaben den Assistenten vor:

Diesen Hinweis habe ich auf dem excel-ticker vom Mourad Louha entdeckt:

http://www.excel-ticker.de

genauer – auf:

http://www.excel-ticker.de/wolfram-datentypen-in-excel-verwenden/?fbclid=IwAR2QsMJlt4q5m7K5rQhfMEwPxYlzWJ1IPr2H-OWYfa6US9monQpaN4EXkMQ

Ich glaube, ich bin allergisch gegen Schokolade: Sie verursacht so fiese Schwellungen rund um meine Hüfte.

Fatal!

Ich füge ein Bild in Excel auf einem Tabellenblatt ein:

Ich speichere die Datei, ändere die Endung des Dateinamens in .ZIP und entzippe die Datei. Im Ordner

xl\drawings

liegt die Datei

drawing1.xml

die ich mit einem XML-Editor öffne. Das Element

<a picLocks noChangeAspect="1"/>

wird geändert in:

<a picLocks noChangeAspect="1" noSelect="1" noMove="1"/>

Das Archiv wird gespeichert und wieder in .XLSX umbenannt. Die Mappe geöffnet und – keine Chance die Datei auszuwählen (und damit zu löschen oder zu verschieben) … Sie wird auch über den Dialog „Inhalte auswählen“ in „Suchen und Auswählen“ nicht gefunden!

Danke an Mourad Louha für den Hinweis!

Übrigens: Der VBA-Befehl

MsgBox ActiveSheet.Shapes.Count

liefert 1. Jedoch kann ich per VBA nicht auf das Shape (und damit auf das Bild) zugreifen:

ActiveSheet.Shapes(1).Left

liefert:

Der Index in der angegebenen Sammlung ist außerhalb des zulässigen Bereichs.

Und: das Foto habe ich im Erika-Fuchs-Haus in Schwarzenbach a. d. Saale aufgenommen. Ein sehr schönes Museum, wie ich finde. Weitere Infos:

http://www.erika-fuchs.de/

Ob die bei Zalando auch so kreischen, wenn die Päckchen zurückkommen?

Word macht auch merkwürdige Dinge:

Formatiert man einen Text mit einer der neun Formatvorlagen Überschrift1, Überschrift2, … wird der Text im Navigationsbereich angezeigt. Anders jedoch, wenn sich dieser Text in einer Tabelle befindet.

Zugegeben: Ich würde Vorlagen für Kapitelüberschriften nicht als Tabellenüberschriften verwenden, sondern dort eigene Vorlagen erstellen; dennoch: das Verhalten ist merkwürdig.

Danke an Pia Bork für diesen Hinweis.

Liebe Männer, der Satz „jetzt beruhige dich erstmal“ hat auf Frauen die ungefähr gleiche Wirkung wie ein Mentos in der Cola.

Hallo Rene bzgl. Outlook habe ich eine Frage: Kann ich unabhängig von den anderen Wochentagen und deren Farbe, den aktuellen Arbeitstag durch eine Markierung hervorheben? Theoretisch funktioniert Outlook als Tabelle  und bei der kann ich ja einzelne Spalten per Farbe hervorheben

Zwar ist Mittwoch mit einem etwas dunklerem Grün von dem helleren Grün für Donnerstag abgegrenzt, jedoch aus meiner Sicht nicht stark genug … ich möchte z.B. Mittwoch die Spalte 27.08.2020 in Gänze gelb markieren

Hallo Barbara,   meines Wissens kann man die Farbe des aktuellen Tags nicht ändern. Umgekehrt: du kannst auch in Word, Excel & co nicht die Farbe der Markierung ändern. LG  ::  Rene

PS: Über Farben in Outlook haben schon einige genörgelt – da gäbe es noch einiges anzupassen: die Grundfarben, die Outlook zur Verfügung stellt, die 25 Farben für die Kategorien, …

So tun, als ob man sich beim Abendessen verschluckt hat, damit man das Bier auf Ex trinken kann …

Hallo René,

ich habe ein paar Online-Trainings zugesagt, für die ich erst jetzt die Themeninhalte bekommen habe und vielleicht kannst Du mir kurz sagen, was folgende Bezeichnung bedeutet? – Diagramme: mehrzeilige Achsenbeschriftung …

Hallo Angelika,

man kann die einzelnen Elemente der Achse weder editieren, also ändern noch formatieren. Ich kann nicht eine Jahreszahl einfärben oder fett formatieren. Ich kann auch nicht die Ausrichtung ändern.

Aber man kann in den Zellen einen Umbruch einschalten ([Alt] + [Enter]) und somit einen Umbruch in der Beschriftung der Achsen erzeugen. Ich schicke dir mal ein (uraltes) Diagramm:

Übrigens: hast du es gelesen? – Messi will seinen Vertrag mit dem FC Barcelona auflösen. Fabrizio Romano schreibt, dass Barcelona auf der Ausstiegsklausel über 700 Millionen Euro bestehe.

Heiligenschein hatte ich schon. Steht mir nicht.

Hallo Herr Martin,

dass Sie ein paar Tage von mir nichts gehört haben, liegt nicht daran, dass ich in der Hitze verglüht wäre, sondern einfach Alles prima läuft.

Ein Kunde hat es jetzt allerdings geschafft, die Hyperlinks durcheinanderzubringen.

Bekomme ich die Listen irgendwie umgehängt zu den korrekten Konzepten oder muss ich löschen und neu erstellen?

Ich weiß nicht, wie der Kollege das so hinbekommen hat.

Hallo Herr H.,

Machen Sie folgendes Spiel: Erstellen Sie eine neue Datei. Fügen Sie zwei Tabellenblätter ein, beispielsweise Tabelle1 und Tabelle2. Erstellen Sie auf Tabelle1 eine Link auf Tabelle2. Benennen Sie „Tabelle2“ um. Dann funktioniert der Link nicht mehr. So etwas machen die freundlichen Menschen …

Und das können Sie selbst machen: Heben Sie den Blattschutz auf (rechte Maustaste auf die Registerkarte).

Klicken Sie auf die Zelle, in der sich der Hyperlink befindet (nicht auf den Link klicken!). Drücken Sie [Strg] + [K] („K“ wie linK). Wählen das Blatt aus, das verknüpft werden soll.

Es gibt zu wenig Gesetze für Insekten. Ein generelles Nachtflugverbot wäre schon mal ein guter Anfang.

Montag ist Datentypentag.

Man kann Firmennamen, Städte- und Ländernamen in Datentypen umwandeln. Mit einem Klick auf das kleine Symbol, über das Kontextmenü oder der Tastenkombination [Strg] + [Umschalt] + [F5] kann man sich die „Karte“ dazu anzeigen lassen: ein Foto, ein Link zur Quelle und weitere Informationen:

Diese Informationen werden im Archiv der Excelmappe gespeichert und können dort im Ordner xl/richData in der Datei rdrichvalue.xml eingesehen werden:

Warum eigentlich nur sehen?

Richtig: DORT kann man die Informationen auch verbiegen, beispielsweise den Link:

Und so verweist der Link nun auf eine ganz andere Seite.

Okay: Nach Aktualisierung wird diese Information wieder „zurück gesetzt“.

Danke an M.L. auch Aachen für diesen Hinweis.

Mein Chef hat mich heute gefragt: „Wo warst du – ich habe dich überall gesucht.“ Ich habe ihm geantwortet: „Chef – gute Mitarbeiter sind schwer zu finden.“

Man hat mich wieder gezwungen LibreOffice Calc zu unterrichten.

Wenn man in Calc mit dem Funktionsassistenten nicht alle Parameter einträgt (beispielsweise bei SVERWEIS) erhält man einen Fehlerwert. Ruft man erneut die Funktion über den Assistenten auf, werden die urspünglich eingetragenen Parameter gelöscht.

Es gibt Telefon, skype, whatsapp, facebook und noch viel mehr. Und meine Nachbarin klingelt an der Türe! Mit der stimmt doch etwas nicht!

Man hat mich wieder gezwungen LibreOffice Calc zu unterrichten.

Upps – wie kann ich eine Pivot-Tabelle erstellen?

Nicht über den Menüpunkt „Daten“, über den man die Pivot-Tabelle aktualisieren oder löschen kann, sondern über „Einfügen“:

Oder indem man das entsprechende Symbol in die Symbolleiste einfügt oder in das Menü.

Wenn Männer wüssten, wie schwierig wir uns manchmal selbst finden …

Man hat mich wieder gezwungen LibreOffice Calc zu unterrichten.

Immerhin – diese Unschönheit wurde in der neuesten Version von Calc entfernt.

Greift man mit einer Funktion, beispielsweise SVERWEIS auf ein anderes Tabellenblatt zu, hat Calc in älteren Version die absolute Referenz dargestellt als:

$Tabellenblatt.$A$1:$C$99

Trägt man die Formel per Hand ein, wählt den Bereich aus und fixiert ihn mit [F4] ist dis kein Problem:

Im Funktionsassistenten kann leider die Taste [F4] nicht verwenden. Dort musste man die fünf $-Zeichen per Hand eintragen. Und wie leicht hat man das erste (das auch sinnlos ist, weil die Tabelle ja nicht verändert wird) vergessen:

In der neuesten LibreOffice-Version werden beide Schreibweisen zugelassen – ältere Versionen verlangen allerdings das $-Zeichen vor Tabelle1. Und lieferten einen Fehler!

Nur wer seine Muttersprache beherrscht ist bereit, seinem Gegner Ravioli zu bieten.

Man hat mich wieder gezwungen LibreOffice Calc zu unterrichten. In der Schulung kam die Frage, was passiert, wenn man eine Calc-Tabelle mit Kennwort schützt

und in Excel öffnet:

Die Antwort: man kann die Datei nicht öffnen!

Umgekehrt: wird ein Tabellenblatt in Excel mit Kennwort geschützt, kann man die Datei in Calc öffnen und den Schutz entfernen. Es wird nicht nach dem Kennwort gefragt!?!

Womöglich sind wir gar nicht die Krone der Schöpfung, sondern wurden von Mücken gezüchtet – als Nahrungsmittel.

Man hat mich mal wieder gezwungen LibreOffice Calc zu unterrichten!

Es ist erstaunlich: in Calc sieht die Verknüpfung auf ein anderes Tabellenblatt folgendermaßen aus:

=Tabellenblatt.Zelle

Verwendet man diesen Aufbau jedoch in Funktion INDEIREKT erhält man einen Fehler. DORT wird die Excelsyntax

=Tabellenblatt!Zelle

verlangt!

Ich vermute, dass LibreOffice beim Nachbauen oder Nachkopieren von Excel übersehen hat, dies umzusehtzen …

Schau mich nicht in diesem Ton an!

Hallo Her Martin,

ich bin auf der Suche nach einer Info zu Excel auf ihre Seite „https://www.excel-nervt.de/das-nichts-in-excel/

gekommen und habe folgende (aus meiner Sicht) falsche Aussage gefunden: 

zuerst der betreffende Textabschnitt:

———–

Text, leerer Text oder kein Text

Ähnlich wie bei Zahlen geht Excel bei Texten vor. Eine Zelle kann leer sein, kann Text oder eine leere Zeichenkette beinhalten. Letzteres kann das Ergebnis einer Funktion sein oder auch direkt eingegeben werden:

=““

Die folgenden drei Abfragen liefern dann WAHR als Ergebnis:

=WENN(ISTLEER(A1);…

=WENN(A1=““;…

=WENN(ISTTEXT(A1);…

———–

Wenn ich aber einer Zelle A1 den Wert „“ (also leeren String) zugewiesen habe, liefert mir die Formel

=WENN(ISTLEER(A1);…

leider nicht den Wert wahr, sondern falsch. Die Zelle wird nicht als „leer“ erkannt.

Hiermit habe ich übrigens genau ein Problem. Ich habe nämlich das „ISTLEER“ oft benutzt und zu spät bemerkt, daß es nicht wie erwartet funktioniert. Jetzt versuche ich, die Formeln zu ändern (z.B. durch Abfrage auf Länge = 0) und die vorhandenen „“ aus Wertfeldern zu eliminieren. Leider habe ich für beides bisher noch keine ganz einfache, schnelle und sichere Vorgehensweise gefunden.

Mit freundlichen Grüßen

Michael Richter

Hallo Herr Richter,

    ich freue mich immer sehr, wenn Leserinnen und Leser auf meine Artikel reagieren – Kritik äußern, Dinge korrigieren, die ich falsch behauptet habe oder Lob äußern.

    Sie haben recht – die Artikel, die Sie unter „über“ und „schade“ finden, sind recht alt und sollten überarbeitet werden. Umgekehrt: wenn Sie „ISTLEER“ in das Suchfeld eintragen, finden Sie weitere Artikel von mir zu diesem Thema.

    Liebe Grüße

    Rene Martin

Hallo Herr Martin,

Und jetzt noch Lob:

Ihre Antwort auf meine Zuschrift find ich vorbildlich.  Außerdem freue ich mich immer, wenn jemand im Internet nützliche Informationen zur Verfügung stellt, und Ihre  Seiten sehen „recht gut gemacht“ aus (ich habe sie allerdings bisher noch nicht näher angesehen, daher nur eine Beurteilung des Eindrucks auf den ersten Blick). 

Liebe Grüße

Michael Richter

Die häufigsten Todesursachen bei Männern: Ikea Besuch | Erkältung | „Sie sind dran mit zurückschreiben.“

Hallo Herr Martin,

ich habe mal wieder ein Excel-Problem, diesmal in Richtung VBA.

Ich möchte gerne in eine dynamische Tabelle eine bedingte Formatierung einfügen, die eine Rahmenlinie-unten in jeder letzten Zeile eines Monats ausführt, wenn der Wert zutrifft.

soweit auch kein Problem, das würde ja auch mit einer normalen bedingten Formatierung funktionieren. Allerdings ist die Tabelle schon mit einem Rahmengitter belegt, um die Zellen besser zu unterscheiden.

Deswegen hätte ich gerne die Rahmenlinie-unten in „fett“, damit man die einzelnen Monate besser hervorhebt.

Da man das „fett“ in Excel bei bedingten Formatierungen nicht auswählen kann, habe ich durch Internetrecherche herausgefunden, dass man per VBA-Programmierung dieses Problem lösen kann.

Meine VBA-Kenntnisse sind allerdings gleich null, was mich nicht weiter bringt J

Anbei eine Beispieltabelle in der nach Belieben rumhantiert werden kann.

Hallo Herr F.,

Stimmt – das ist mir noch gar nciht aufgefallen: in der Bedingten Formatierung fehlt die Rahmenart. Doof!

Den Code hätten Sie doch sicherlich selbst hinbekommen.

Das Makro hängt an der Datei.

Sie können es in der Datei lassen oder in Ihre persönliche Makrodatei kopieren.

Sie können es über Entwicklertools / Makros (alternativ: Ansicht / Makros) starten – das Makro heißt „LinienEinfügen“

Oder Sie fügen ein Symbol in die Symbolleiste für den Schnellzugriff ein und starten es darüber.

Nicht ganz elegant, aber leicht zu ändern – in den ersten drei Zeilen lege ich die Spalte fest:

Sub LinienEinfügen()
    Const BEGINN As String = "A"
    Const ENDE As String = "I"
    Const SUCHSPALTE As String = "B"
    Dim i As Long
    Dim lngLetzteZeile As Long
    
    
    lngLetzteZeile = _
       ActiveSheet.Range("A1").SpecialCells(xlCellTypeLastCell).Row
    ' -- ermittle die Nummer der letzten Zeile
    
    For i = 1 To lngLetzteZeile
        If ActiveSheet.Range(SUCHSPALTE & i).Value <> "" And _
            ActiveSheet.Range(SUCHSPALTE & (i + 1)).Value <> "" Then
            If IsDate(ActiveSheet.Range(SUCHSPALTE & i).Value) And _
                IsDate(ActiveSheet.Range(SUCHSPALTE & (i + 1)).Value) Then
                If Month(ActiveSheet.Range(SUCHSPALTE & i).Value) <> _
                  Month(ActiveSheet.Range(SUCHSPALTE & (i + 1)).Value) Then
                    With ActiveSheet.Range(BEGINN & i & ":" & _
                        ENDE & i).Borders(xlEdgeBottom)
                        .LineStyle = xlContinuous
                        .ColorIndex = xlAutomatic
                        .TintAndShade = 0
                        .Weight = xlThick
                    End With
                End If
            End If
        End If
    Next i


End Sub

Guten Morgen Herr Martin,

vielen herzlichen Dank für die Codes.

Damit komme ich zurecht.

Allerdings kann ich leider noch nicht sagen, dass ich das hinbekommen hätte.

Trotzdem vielen Dank nochmal und schöne heiße Tage!

Drei Dinge sagen immer die Wahrheit: Kinder, Betrunkene und Leggings

Die Welt verbiegt sich so, dass sie in Excel passt. Amüsant:

https://www.spiegel.de/netzwelt/web/fuer-microsoft-excel-forscher-benennen-menschliche-gene-um-a-0d80a025-85af-4652-ace1-e29bb96109f1

„Tausende Fachartikel enthielten Fehler – weil Microsoft Excel Gennamen automatisch als Datumsangaben formatiert. Jetzt werden 27 menschliche Gene umbenannt.“ schreibt die Süddeutsche Zeitung. Menschliche Gene dürfen ab sofort umbenannt werden, wenn ihre bisherigen Bezeichnungen „den Umgang und Abruf von Daten beeinflussen“, wie das Gremium schreibt. „Zum Beispiel wurden alle Bezeichnungen geändert, die Microsoft Excel automatisch in Datumsangaben umwandle.“

https://www.sueddeutsche.de/digital/microsoft-excel-genforschung-namen-1.4992440

Ob wirklich alle Gene umbenannt werden? Beiepielsweise 2310009E13.

Danke an Dominic Dauphin und an Mourad Louha für den Hinweis.

Der Biolehrer wollte wissen, was die Menschen vom Affen trennt. „Der Lehrertisch“ war wohl die falsche Antwort.

Hallo René

Excel nervt wirklich!

Ich wollte nur mal kurz diesen Tipp mit der Eingabezelle prüfen.

Und Sch…. (sorry, ich konnte den Rest noch unterdrücken), die Quasseltante plaudert immer noch alles nach, was ich eingebe, obwohl ich den Befehl umgehend wieder aus dem Schnellzugriff entfernt habe.

Auch ein Neustart hat nicht genützt.

Hast du eine Vorschlag, um diese Stimme abzuschalten – sie ist wirklich nicht in meinem Kopf…

Hallo Adrian,

das hört sich tragisch an! *lach*

1. bei mir sie wieder aufgehört (sonst hätte ich etwas geschrieben)

2. hast du zweite Symbol „Eingabezellen – Eingabezellen beenden“ versucht?

Liebe Grüße Rene

Ja, es ist wohl der Hitze geschuldet. Ich hatte zuerst nur den ersten Befehl erfasst (Eingabezelle), dann noch den zweiten „Eingabezelle beenden“  und später dann alle. Dann habe ich nochmals den Befehl „Eingabezelle beenden“ angeklickt – und Uff, das Gequassel war vorbei

Aber es gibt eine Steigerung

Noch viel verheerender ist es, wenn man im Windows den Ton in der erleichterten Bedinung aktiviert [Win] + [Strg] + [Enter] …

Schönes kühles Wochenende

Adrian

Richtige Männer speichern nicht!

Boah, ist das frech. Jahrzehntelang durfte wir Dokumente erstellen, die dann vielleicht irgendwann abgesürzt sind. Und wir durften sie noch einmal erstellen. Haben uns ein bisschen geärgert. Und jetzt kommt Microsoft und macht uns darauf aufmerksam, dass wir doch (bitte ?!) das Dokument speichern sollen. Haben die Angst um unsere Dateien?

Ich will auch weiterhin in Word, Excel & co Dateien erstellen ohne zu speichern. Meine Datei gehört mir. Jetzt wird nicht gespeichert!

Ist nicht Bier kaltstellen auch irgendwie kochen?

Word hat mehr Zeichen als Excel: geschützte Leerzeichen, bedingte Trennzeichen, geschützte Trennzeichen, … Kopiert man Texte mit solchen Zeichen nach Excel ist das Erstaunen oft groß: Zeichen, die in der Zelle angezeigt werden, jedoch nicht in der Eingabezeile.

Die Funktion CODE hilft den (ASCII-)Code zu ermitteln:

Mit diesem Wissen kann man mit der Funktion WECHSELN die alten Zeichen (hier: 173) durch „“ oder durch ein anderes Zeichen ersetzen:

Oder ich markiere es, indem ich mit [F2] in die Zelle wechsle, dort mit der Pfeiltaste nach rechts wandere und mit [Umschalt] + [Pfeil] markiere. Das kann ich kopieren [Strg] + [C])

und in den Ersetzen-Dialog einfügen. Und so alle Trennzeichen auf dem Blatt löschen.

Ich war gestern doch gar nicht so betrunken. – Du hast den Duschkopf in den Arm genommen und gesagt, er soll aufhören zu weinen!

Diese Seite zu den DAX-Funktionen sollte Microsoft noch einmal überarbeiten.

https://docs.microsoft.com/de-de/dax/dax-overview

Zum einen finden sich dort verwirrende Denglish-Erklärungen. Zum andere erstaunen Aufzählungen. Die trigonometrische Kreisfunktion TAN wird den statistischen Funktionen zugeordnet. Ups!

Ich war reich und sexy. Und dann klingelte der Wecker.

Seltsam – da fehlen einige Spalten in PowerPivot.

Aber des Rätseln Lösung ist schnell gefunden: es gibt eine Schaltfläche, mit der man ausgeblendete Spalten und Tabellen anzeigen lassen kann oder „echt“ ausblenden lassen kann:

Übrigens: nicht nur in der Diagrammansicht, sondern auch in der Datenansicht!

Ich diskutiere nicht. Ich erkläre nur, warum ich recht habe.

Seltsam. Ich erstelle eine Pivottabelle, bei der ich mehrere Tabellen miteinander im Datenmodell verknüpft habe. Schon der erste Blick zeigt, dass das nicht korrekt sein kann:

Ein Blick in die Diagrammansicht von PowerPivot gibt Antwort: eine Verbindung wurde auf inaktiv gesetzt:

Man sieht es auch in der Feldliste der Pivottabelle:

Verbindung wird aktiv setzen und –

schon sieht das Ergebnis besser aus!

Papa, bekomme ich eine Delfintherapie? – Im Kühlschrank steht ein Glas Rollmöpse. Die kannst du aufwickeln und streicheln.

Nicht konsequent.

Will man in einer Tabelle in PowerPivot mehrere Spalten ausblenden, muss man sie einzeln markieren., wenn sie nicht nebeneinander liegen. Man kann sie dort nicht mit gedrückter [Strg]-Taste markieren.

Wechselt man jedoch von der Datensicht in die Diagrammsicht, ist es ohne Weiteres möglich mit gedrückter [Strg]-Taste mehrere Spalten zu selektieren.

Früher war alles leichter. Ich auch.

War das früher besser? Zumindest ging das früher!

Vorn vorne: die Excel-Funktion HÄUFIGKEIT ist eine Matrixfunktion. Mit ihrer Hilfe (ebenso wie mit ZÄHLENWENN oder SUMMENPRODUKT) kann man die Häufigkeit von Daten in einer Liste bestimmen, beispielsweise, wie oft Notenwerte vorhanden sind. Dabei muss Die Funktion als Matrixfunktion verwendet werden, das heißt mit [Umschalt] + [Strg] + [Enter] beendet werden:

Das funktioniert bei exakt vorkommenden Werten, aber auch bei „Zwischenwerten“ – von – bis:

Man kann die Funktion aber auch als eine Funktion verwenden und runterziehen – dann werden die Werte kumuliert:

Nein – so konnte man das früher machen – vor den Spillfunktionen (den Arrayfunktionen SEQUENZ, SORTIEREN, EINDEUTIG, …) machen. Seit Microsoft diese Funktionen und diese Arbeitstechnik eingeführt hat, erzeugt HÄUFIGKEIT beim Markieren eines Wertes zwei Ergebnisse: Wie oft taucht dieser Wert auf und wie viele andere Werte sind vorhanden.

Und heute? – Man muss HÄUFIGKEIT mit einem @ entwerten, dann hat man wieder die gleiche Funktionalität wie früher:

Danke an Mourad Louha für diesen Hinweis.

So viele Spiegel in der Wohnung – und keiner funktioniert richtig!

Hallo René

Interessant finde ich, dass man erst googlen muss, um herauszufinden, dass die Inversmatrix in Excel als Funktion MINV heißt und bei VBA als Worksheetfunction MINVERSE (sogar mit E am Schluss, da kommst echt net drauf von allein)…

Hallo Axel,

Zwei Tipps, damit die nicht googln musst, was MINV heißt:

Der Translator von Mourad Louha (excel-translator.de) Oder du verwendest die Formel, schaltest den Makrorekorder ein, editierst die Formel (bei mir: [F2]) und Makrorekorder STOPP. Er „übersetzt“ dann die Funktionen ins Englische.

Übrigens: Schöne Skizze:- da steckt viel Hirnschmalz drin …

Ein Tag hat 24 Stunden. Eine Palette Bier hat 24 Dosen. Das kann kein Zufall sein!

Hallo René,

du bist ein Ass, danke, nun weiß ich wie man die einzelnen Elemente anspricht, nach Zeile und Spalte und habe meinen Code angepasst.

aber: in meinem Fall markiere ich ja vor Eingabe der UDF wie immer bei Matrixfunktionen 3 Zellen untereinander und möchte, dass 3 Ergebnisse aus einem neuen Array, das mit den gewonnenen Variablen arbeitet erscheint

Hallo Axel,

Ich habe die Array verkleinert … das Überwachungsfenster hat mir verraten, dass Matrix1(0, x) und Matrix2(0,x) nicht belegt sind.

Public Function Test1(S1 As Variant, R1 As Variant, S2 As Variant, R2 As Variant, R3 As Variant)
 
' Funktionsbeschreibung: Berechnet den Schnittpunkt einer Geraden mit einer Ebene,
' Inputselektion:  5 zusammenhŠngende Zellbereiche (S1,R1,S2,R2,R3)

' Variablen deklarieren
 Dim S1x As Double
 Dim S1y As Double
 Dim S1z As Double
 
 Dim R1x As Double
 Dim R1y As Double
 Dim R1z As Double
 
 Dim S2x As Double
 Dim S2y As Double
 Dim S2z As Double
 
 Dim R2x As Double
 Dim R2y As Double
 Dim R2z As Double
 
 Dim R3x As Double
 Dim R3y As Double
 Dim R3z As Double
 
 Dim x1 As Double
 Dim x2 As Double
 Dim x3 As Double
 
 Dim Loesung()
 Dim r As Double
 
 Dim ReturnArray(3)
 Dim DoTranspose As Boolean
 
 Dim Matrix1(2, 2) As Double ' (kann man das so deklarieren (Anzahl Zeilen/Spalten der Matrix)?
 Dim Matrix2(2, 0) As Double
 
 
 ' Bestimmen, ob Inputbereich horizontal oder vertikal ist
 If Application.Caller.Rows.Count > 1 Then
 DoTranspose = True
 Else
 DoTranspose = False
 End If
 
 
' Werte aus Inputselektion (Vektorkoordinaten und neue LŠnge) holen
 S1x = S1.Cells(1).Value
 S1y = S1.Cells(2).Value
 S1z = S1.Cells(3).Value
 
 R1x = R1.Cells(1).Value
 R1y = R1.Cells(2).Value
 R1z = R1.Cells(3).Value
 
 S2x = S2.Cells(1).Value
 S2y = S2.Cells(2).Value
 S2z = S2.Cells(3).Value
 
 R2x = R2.Cells(1).Value
 R2y = R2.Cells(2).Value
 R2z = R2.Cells(3).Value
 
 R3x = R3.Cells(1).Value
 R3y = R3.Cells(2).Value
 R3z = R3.Cells(3).Value
 
 'Matrizes bestimmen
 '3x3 Matrix
 Matrix1(0, 0) = R1.Cells(1).Value
 Matrix1(1, 0) = R1.Cells(2).Value
 Matrix1(2, 0) = R1.Cells(3).Value
 
 Matrix1(0, 1) = R2.Cells(1).Value * (-1)
 Matrix1(1, 1) = R2.Cells(2).Value * (-1)
 Matrix1(2, 1) = R2.Cells(3).Value * (-1)
 
 Matrix1(0, 2) = R3.Cells(1).Value * (-1)
 Matrix1(1, 2) = R3.Cells(2).Value * (-1)
 Matrix1(2, 2) = R3.Cells(3).Value * (-1)
 
 '1x1 Matrix
 Matrix2(0, 0) = S2.Cells(1).Value - S1.Cells(1).Value
 Matrix2(1, 0) = S2.Cells(2).Value - S1.Cells(2).Value
 Matrix2(2, 0) = S2.Cells(3).Value - S1.Cells(3).Value
 
 
 ' Berechnungen
 
 ' r berechnen
 
 Loesung = Application.WorksheetFunction.MMult(Application.WorksheetFunction.MInverse(Matrix1), Matrix2)
 
 r = Loesung(1, 1)
 
 MsgBox r

 ' Ergebnis berechnen (Koordinaten des Schnittpunkts nder Geraden mit der Ebene)
 ReturnArray(0) = S1x + r * R1x
 ReturnArray(1) = S1y + r * R1y
 ReturnArray(2) = S1y + r * R1y


' Output transponieren horizontal zu vertikal oder umgekehrt, falls n_tig
 If DoTranspose Then
 Test1 = Application.WorksheetFunction.Transpose(ReturnArray)
 Else
 Test1 = ReturnArray
 End If

' Ergebnis erscheint in den 3 Output-Zellen

End Function

was habe ich gestern gemacht? Wir haben ja herausgefunden, dass in der „Lösungs“-Zeile der Fehler steckt.

Ich habe das Datenfeld Matrix markiert und das Überwachungsfenster eingeschaltet. Dort habe ich festgestellt, dass der Wert an der Position 0 nicht belegt ist:

Da waren sie wieder – meine drei Probleme: Vergesslichkeit, Dings und das Andere.

Lieber René,

ich hoffe, es geht dir gut. Darf ich dir eine kurze Frage VBA stellen? Folgende Situation:

Ich habe eine geodätische Kuppel gebaut und möchte ein Gleichungssystem mit 3 Gleichungen und 3 Unbekannten zu lösen:

Function GleichungsSystemMatrix3x3und1x3Parameter(Matrix1 As Range, Matrix2 As Range) As Variant
GleichungsSystemMatrix3x3und1x3Parameter = Application.WorksheetFunction.MMult(Application.WorksheetFunction.MInverse(Matrix1), Matrix2)
End Function

Und jetzt kommts: Da kommen also 3 Parameter r, t und w raus (so will ich sie später nennen) und die hätte ich gerne in Variablen geschrieben und eben nicht gleich in die Excelzellen, wie das der obige Code halt macht.

Hättest du eine Idee und Lust zu helfen?

LG, Axel

moin Axel,

du musst die Arrays richtig zusammenbauen, dann klappt es. Das Überwachungsfenster hat mir geholfen.

Sub LösungBerechnen()
Dim Matrix(2, 2) As Double
Dim Lö1(2, 2) As Double
Dim R1 As Double
Dim R2 As Double
Dim R3 As Double
Dim T1 As Double
Dim T2 As Double
Dim T3 As Double
Dim W1 As Double
Dim W2 As Double
Dim W3 As Double
Dim L1 As Double
Dim L2 As Double
Dim L3 As Double

R1 = 5
R2 = 3
R3 = 2
T1 = -1
T2 = 2
T3 = 2
W1 = 7
W2 = 5
W3 = 8

L1 = 3
L2 = 4
L3 = 1

Matrix(0, 0) = R1: Matrix(1, 0) = R2: Matrix(2, 0) = R3
Matrix(0, 1) = T1: Matrix(1, 1) = T2: Matrix(2, 1) = T3
Matrix(0, 2) = W1: Matrix(1, 2) = W2: Matrix(2, 2) = W3

Lö1(0, 0) = L1: Lö1(1, 0) = L2: Lö1(2, 0) = L3

MsgBox GleichungsSystemMatrix3x3und1x3Parameter_L1(Matrix, Lö1)
MsgBox GleichungsSystemMatrix3x3und1x3Parameter_L2(Matrix, Lö1)
MsgBox GleichungsSystemMatrix3x3und1x3Parameter_L3(Matrix, Lö1)

End Sub

Function GleichungsSystemMatrix3x3und1x3Parameter_L1(Matrix1 As Variant, Matrix2 As Variant) As Double
Dim Lösung As Variant
Lösung = Application.WorksheetFunction.mmult(Application.WorksheetFunction.MInverse(Matrix1), Matrix2)
GleichungsSystemMatrix3x3und1x3Parameter_L1 = Lösung(1, 1)
End Function

Function GleichungsSystemMatrix3x3und1x3Parameter_L2(Matrix1 As Variant, Matrix2 As Variant) As Double
Dim Lösung As Variant
Lösung = Application.WorksheetFunction.mmult(Application.WorksheetFunction.MInverse(Matrix1), Matrix2)
GleichungsSystemMatrix3x3und1x3Parameter_L2 = Lösung(2, 1)
End Function

Function GleichungsSystemMatrix3x3und1x3Parameter_L3(Matrix1 As Variant, Matrix2 As Variant) As Double
Dim Lösung As Variant
Lösung = Application.WorksheetFunction.mmult(Application.WorksheetFunction.MInverse(Matrix1), Matrix2)
GleichungsSystemMatrix3x3und1x3Parameter_L3 = Lösung(3, 1)
End Function

Liebe Grüße :: Rene

Laut einer Studie leben Frauen, die etwas mehr auf der Hüfte haben, länger als Männer, die es ihnen sagen.

Ich sehe schon: Montag ist Datentypen-Tag.

Letzte Woche auf dem Excelstammtisch „Wir im Norden“ kam die Frage auf: Woher holen sich die Datentypen die aktuellen Informationen? Und: wo werden sie abgelegt?

Von vorne: In einer Liste befinden sich Städte oder Ländernamen. Diese werden markiert und in Geographie-Daten umgewandelt:

Die Quelle der Daten wird angegeben. Sie ist bei dem Symbol „Karte anzeigen“ hinterlegt:

Am unteren Ende die Quellen:

Und wo werden die Daten gespeichert? Benennt man die Datei um, so dass sie die Endung *.ZIP hat, entpackt man sie, stellt man fest, dass ein neuer Ordner richData enthalten ist:

Darin befinden sich die Daten – abgelegt als XML-Datei:

Die Daten – Ausschnitt

Clever! Ziemlich clever!

Wenn eine Beziehung auseinander geht, sind immer schuld. Er und seine Mutter.

Ich möchte gerne Knäckebrot und Smørrebrød in der AutoKorrektur in Word, PowerPoint oder Outlook hinterlegen. Ich schreibe diese beiden Wörter in das Dokument und markiere sie. Smørrebrød wird nicht erkannt. Okay.

Rufe ich die AutoKorrektur beim Knäckebrot auf, schlägt mir Word vor, ein Kürzel für dieses Wort zu hinterlegen:

Bei Smørrebrød jedoch schlägt mir Word vor diesen Fehler durch ein korrekt geschriebenes Wort zu ersetzen:

Tipps für einen flachen Bauch: nur flache Sachen essen. Schokolade zum Beispiel. Oder Pizza.

Hallo Herr Martin,
Das Feld für die Prozessnummer ist zu kurz. Mit 20 Zeichen muss es dann aber passen.

Hallo Herr H.,
voilà – jetzt mit 20 Zeichen Prozessnummer.
schöne Grüße
Rene Martin

PS: Ich traue Ihnen ja nicht. Besser: in vorauseilendem Gehorsam habe ich die Prozessnummer als Text formatiert – sollten Sie mal eine Nummer wie 12345678901234567890 haben würde Excel 1,2345E+19 machen …

Hallo Herr Martin,
Gut mitgedacht! Die Prozessnummern werden mit Punkten getrennt und Excel macht in vorauseilendem Gehorsam ein Datum daraus, wenn es passen könnte. Ich habe das bisher immer mit einem Hochkomma umschifft .

Falls ihr mich sucht – ich bin etwas zu weit gegangen …

Nun sind es schon drei.

Ich habe drei Faktoren gefunden, warum die Gruppen „Datentypen“ nicht angezeigt werden. In Microsoft 365 gibt es Datentypen:

Oder eben auch nicht. Sollten sie nicht vorhanden sein, kann das folgende Ursachen haben:

  • Keine Internetverbindung
  • Kein gültiger Anmeldename
  • Die englische Sprache wurde nicht installiert:

DANN werden die Datentypen auch nicht angezeigt:

Danke an Thomas Maier für den dritten Hinweis.

Wenn jemand eine Schraube locker hat, kann das auch an der Mutter liegen.

Ich bin nicht glücklich. Wie kann man eine Tastenkombination in einem Programm für verschiedene Dinge verwenden?

Outlook

Ich erstelle Schnellbausteine. Ich arbeite gerne damit – entweder wähle ich sie aus der Liste aus oder ich trage den Namen des Autotextes in meine Mail ein und drücke anschließend [F3].

Jedoch: Wenn ich eine Mail beantworte, springt [F3] in das Suchen-Feld. Ebenso wie [Strg] + [E] oder [Alt] + [Q]:

Erst, wenn ich die Mail „ausklappe“, also abdocke, dann bewirkt [F3] wieder: ersetze Name des Schnellbausteins durch den dahinter liegenden Inhalt:

Was geht ab? – Schwarzer Edding schon mal nicht!

Ich glaube, da muss Microsoft nochmal ran!

Ich zeichne ein Makro auf: ein Bild wird eingefügt:

ActiveSheet.Pictures.Insert("F:\Eigene Bilder\Erdbeertörtchen.JPG").Select

Ich möchte den Code etwas verändern:

Und stutze, weil das Objekt „Picture“ nicht in der Liste der Objektvariablen angeboten wird. Ich versuche es trotzdem:

Das Makro

Sub BildEinfuegen()
     Dim xlBlatt As Worksheet
     Dim xlBild As Picture
     
     Set xlBlatt = ActiveSheet
     Set xlBild = xlBlatt.Pictures.Insert("F:\Eigene Bilder\Erdbeertörtchen.JPG")

End Sub

läuft hervorragend. Okay – und was heißt: Bilder verschieben und verkleinern? Der Makrorekorder liefert:

ActiveSheet.Shapes.Range(Array("Picture 8")).Select
Selection.ShapeRange.ScaleWidth 0.3169191919, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 0.3169191919, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.IncrementLeft 252
Selection.ShapeRange.IncrementTop 54.75

Merkwürdig – ich hänge den veränderten Code an mein Makro:

Dim xlBlatt As Worksheet
Dim xlBild As Picture

Set xlBlatt = ActiveSheet
Set xlBild = xlBlatt.Pictures.Insert("F:\Eigene Bilder\Erdbeertörtchen.JPG")

With xlBild
    .Width = .Width * 0.3169191919
    .Height = .Height * 0.3169191919
    .Left = 252
    .Top = 54.75
    .Visible = True
End With

HIER wird das Picture-Objekt erkannt. Und: läuft doch!

Lass uns heute Weihnachten feiern – was weg ist, ist weg!

Das Thema „Datentypen“ in Excel beschäftigt mich weiterhin. Zuallererst mein Bedauern darüber, dass die Symbole – genauer – die Gruppe verschwindet. Aber wann?

Wie ich bereits geschrieben habe: wenn keine Internetverbindung vorliegt.

Aber auch in folgendem Fall: Datentypen sind da:

Ich melde mich von meinem Konto ab:

Datentypen sind weg!

Und: ich vermute, dass noch viele weitere Faktoren eine Rolle spielen, ob die Gruppe sichtbar oder unsichtbar ist …

Kein Geld für exotischen Urlaub. Aber für Duschgel Cocos-Ananas reicht es noch.

War das immer schon da? Und ist mir nie aufgefallen?

Wenn man Excel-Mappen im Windows Explorer verschiebt oder kopiert, erscheit das Excel-Logo.

Seit Microsoft 365 und den häufigen Windows-Updates bekomme ich die Krise – alle Naselang gibt es irgendwo Kleinigkeiten, die neu oder anders sind – und ich weiß langsam nicht mehr, ob Dinge neu sind oder ich wahnsinnig werde.

Jetzt mache ich erst mal Wochenende …

Ich habe so realistisch geträumt, dass ich joggen war. Bin mit Muskelkater aufgewacht. Träume jetzt von Sex, Geld und Kuchen.

Amüsant. Ich erstelle ein VBA-Projekt. Ein Klick auf eine Schalftläche führ dazu, dass ein ausgeblendetes Tabellenblatt eingeblendet und konfiguriert wird.
Dabei sitzt der Cursor auf den neuen Blauu auf der Zelle, die einen Kommentar enthält. Dieser Kommentar wird schon vorher – zumindest als leeres Rechteck – angezeigt …

http://www.excel-nervt.de/wp-content/uploads/2020/06/20200630Loch.mp4

Du willst wissen, wie ich so im Bett bin? – Ich schlafe auf dem Bauch, sabbere, murmle im Schlaf vor mich hin und sehe niedlich aus!

Merkwürdig. Ich erstelle in Outlook ein Makro, das eine Mail mit Anhang versendet:

Private Sub MailVersenden()
     Dim olApp As Application
     Dim olMail As MailItem

     Set olApp = Application
     Set olMail = olApp.CreateItem(olMailItem) ' olMailItem = 0

With olMail
    .To = "rene.martin@compurem.de"
    .Subject = "Beratungscheckliste Privatkunden"
    .Attachments.Add Source:="D:\Eigene Dateien\Excel\Kundeninformationen.xlsx"
    .Body = "Diese Mail wurde automatisch erstellt."

    .Send

End With

MsgBox "Das Dokument wurde erfolgreich per Mail gesendet.", vbInformation

End Sub

Klappt! Ich versuche es in Excel. Kopiere den Code, ändere ihn ein wenig, weil ich dort mit late binding arbeite:

Private Sub MailVersenden()
     Dim olApp As Application
     Dim olMail As MailItem
     Const olMailItem As Integer = 0

     Set olApp = Application
     Set olMail = olApp.CreateItem(olMailItem) ' olMailItem = 0

With olMail
    .To = "rene.martin@compurem.de"
    .Subject = "Beratungscheckliste Privatkunden"
    .Attachments.Add Source:="D:\Eigene Dateien\Excel\Kundeninformationen.xlsx"
    .Body = "Diese Mail wurde automatisch erstellt."

    .Send

End With

MsgBox "Das Dokument wurde erfolgreich per Mail gesendet.", vbInformation

End Sub

Das Ergebnis:

Erst wenn ich den Namen des Parameters „Source“ lösche, funktioniert es:

Ich vermute, dass „Object“ nicht korrekt in MailItem konvertiert werden kann.

Merkwürdig!

Griechischer Dichter mit „A“? – „Achilles! – Der ist bekannt wegen seiner Ferse.“

Schon mehrmals in diesem Jahr bin ich über folgende Frage gestolpert: „Warum zeigt Microsoft Excel manchmal Datentypen an, manchmal nicht?“

Manchmal ohne …
Manchmal mit Datentypen!?!

Die Lösung (oder: eine der Lösungen) findet sich in der Taskleiste: Die Datentypen setzen eine Internetverbindung voraus. Ist diese nicht vorhanden, gibt es auch keine Datentypen – heißt: wird die Gruppe ausgeblendet!

Oh – ein vierlagiges Kloblatt. Endlich habe ich auch mal Glück!

Die Richtung ist gut; aber es fehlt noch etwas …

Microsoft hat vor einer Weile in Microsoft 365 die „alten“ Kommentare in Notizen umbenannt und „neue“ Kommentare eingefügt. Die „neuen“ Kommentare kann man sich in einem Aufgabenbereich anzeigen lassen (Überprüfen / Kommentare / Kommentar anzeigen).

Ein Klick auf den Kommentar führt zu dem Kommentar.

Notizen kann man suchen (Start / Bearbeiten / Suchen und Auswählen / Notizen). Oder mit dem Befehl „Nächste Notiz“ (Überprüfen / Notizen / Notizen) zur nächsten Notiz springen.

Oder man blendet den Auswahlbereich ein. Dort werden alle Notizen aufgelistet. Dort kann man sie ein- und ausblenden.

Jedoch: leider nicht anspringen. Warum eigentlich nicht? Übrigens: Formen und Bilder leider auch nicht …

Randbemerkung: Notizen kann man in Kommentare umwandeln ( Überprüfen / Notizen / Notizen) jedoch nicht mehr zurück. Okay – DAMIT kann ich leben.

Sommer kommt – fuck the Pullis!

Das Telefon klingelt.
„Hallo René, ich bin’s: Angelika. Hast du mal nen Moment Zeit?“

Kennt ihr Gespräche, die so beginnen? „Hast du mal einen Moment Zeit?“ Das dauert normalerweise sehr, sehr lange. Egal – ich nehme mir die Zeit für Angelika.

„Jep, schieß los – was gibt’s?“
„Ach mein Excel nervt wieder! Ich bereite gerade eine Schulung vor. Excel zeigt mir immer nur die Formeln an, nicht die Ergebnisse. Ich bin völlig verzweifelt; ich weiß nicht, was ich machen soll!“
„Hast du die Formel-Anzeige eingeschaltet? – Formeln / Formeln anzeigen.“
„Ne, da habe ich schon geschaut.“
„Wie sind denn die Zellen formatiert? Wie lautet das Zahlenformat“
„Na – als Standard sind sie formatiert!“
„Mach mal einen Doppelklick auf die Zelle mit der Formel! Und dann [Enter]“
„Ach – jetzt geht es! Was war das?“
„Ich frag mal zurück: was hast du gemacht?“

„Also von vorne. Ich bereite gerade die Excelschulung für nächste Woche vor. Ich habe eine Liste mit Telefonnummern:

Ich füge Spalten ein und zeigen den Teilnehmern den Assistenten Daten / Text in Spalten.

Dann will ich die Teile wieder zusammenbauen. Und: egal, was ich verwendet habe: das &-Zeichen, VERKETTEN, TEXTKETTE, TEXTVERKETTEN … immer die Formel statt das Ergebnis!“

„Klar! Du hast die Telefonnummern als Text formatiert.“ Durch das Spalten Einfügen übernimmst du das Textformat. Und deshalb rechnet die Formel nicht mehr, sondern wird als Text eingefügt.“

„René – danke! Ich wusste doch, dass Excel nervt. Und dass du mir helfen kannst!“

Bio-Bauern behaupten, dass gutes Gras gute Milch gibt. Als ob Kühe kiffen …

Schon mal VBA programmiert? Auf ein VBA-Propjekt Schutz (mit Kennwort) gelegt? Kann nicht geöffnet werden!. Okay – kann geknackt werden:

Kann Makro aufzeichnen? Könnte! Möglich ist nicht. Sollte Kennwort anfragen. Fehlermeldung ist die Folge:

Liebe Microsoftis: In Lektion II: Deutsch für US-amerikanische ITler lernen wir, wie man syntaktisch korrekte Sätze mit einem Subjekt erstellt.

Könnte besser klingen!

Du siehst besser aus wie ich. Warum bist du noch Single? – Als!

Wenn man ein Tabellenblatt in Excel schützt, sieht man an dem Symbol in der Registerkarte „Überprüfen“, dass das Blatt geschützt wurde – nun kann man den Blattschutz aufheben:

In den anderen Registerkarten des Menübandes sind die Symbole „ausgegraut“, das heißt nicht aktiv – ein schwacher Hinweis auf Blattschutz. Es könnte auch andere Gründe dafür geben, dass man die Symbole nicht aktivieren kann.

Seit einer Weile spendiert Excel in Microsoft 365 ein neues (Schloss-)Symbol in der Registerkarte:

Aber – so fragt Mourad Louha – welche der Optionen zum Schutz wurden denn aktiviert?

Meine witzelnde Antwort darauf: Wie bei einem Formular: man muss das Blatt rumdrehen – auf der Rückseite befindet sich die Liste der Einstellungen.

Schrittzähler ist für Fortgeschrittene. Ich fange mit dem Bewegungsmelder an.

Da bin ich über meine eigenen Füße gestolpert. Man (ich!) sollte sich (mir!) merken, was man (ich) gemacht habe.

Ich habe ein Formular für einen Kunden erstellt. Die Prozessnummer soll nun von fünf Zeichen auf zwölf erweitert werden:

Also schnell die Notiz (den Kommentar) anpassen. Ich stutze! Ich finde sie nicht. Weder über die Registerkarte „Überprüfen“:

noch über die Suche – in der Registerkarte „Start“:

Mit dämmert es: kein rotes Eck – vielleicht ist das gar keine Notiz! Richtig: es handelt sich um die Eingabemeldung einer Datenüberprüfung. Und DORT kann ich sie auch ändern – ebenso wie die Datenüberprüfung selbst:

Vielleicht bezeichnet das Wort „EHERING“ auch einfach einen Fisch mit Elektromotor.

Hallo zusammen. Darf Excel das? Weiß jemand von euch, warum Excel das macht? Und: wie man ihm das abgewöhnt?
Ich erstelle eine Excelmappe mit einer Autoform und einem Bild. Beide haben die Größe 17 x 17 cm; 100% x 100%. Mein PC-Bildschirm hat die Einstellung 100%.

Ich öffne diese Datei auf einem Tablett (Ansichtseinstellung: 200%). Das Ergebnis: die Größe beträgt 16,97 x 16 cm oder: 100% x 94%. Die Objekte werden also verzerrt (und nicht unerheblich!)

Böses Excel! Kennt jemand die Lösung? Und nein – die Bildschirmauflösung anzugleichen (beispielsweise auf 1920 x 1200) ist nicht nur doof (die Anwender werden sich bedanken!) – es nützt auch nichts!

Größe des Bildes unabhängig von Zellgrösse einstellen? Excel orientiert sich nach der Standardschriftart, was z.B. die Standardbreite der Spalten betrifft. Anekdote am Rande: in den Anfangszeiten von Windows 10 hatte MS die Definition von Calibri geändert, was dazu geführt hatte, dass Bilder und Objekte verzerrt dargestellt wurden, obwohl alles in Excel gleich eingestellt war. Ich meine, die Änderung von Calbri haben die wieder zurückgenommen (oder auf verschiedene Windows-Versionen ausgerollt).

Danke an Robert Frießleben und Mourad Louha für den Tipp.

Und: „Seitenverhältnisse sperren“. Und „unabhängig von der Zellgröße“ nutzt auch nichts. Aus der Autoform 17 x 17 wird 16,1 x 17 (Excel behauptet: 100% x 100%)! Aus dem Bild wird 17 x 16,13 (100% x 95%).
Und was passiert, wenn ich das Blatt sperre und das Objekt schütze? – RICHTIG: GAR NICHTS. Excel verändert die Größe und die Seitenverhältnisse.

Danke an Ute Simon für den Hinweis: „Die Office-Programme richten (oder richteten? Ich habe damit zusammenhängende Probleme lange nicht gesehen) sich für die Bildschirmdarstellung nach dem installierten Standard-Druckertreiber. Das beeinflusst also die Darstellung auf dem PC. Wonach sie sich dann auf dem Tablet (iPad oder Android?) richten, von dem ja normalerweise eher nicht gedruckt wird, weiß ich nicht so genau. Was ich damit sagen will: Die Darstellung ist nicht nur vom Programm abhängig, sondern auch von externen Faktoren (z.B. Druckertreiber, oder wie Du schon vermutest, Bildschirmauflösung). Es ist ja leider auch so, dass in Excel eingefügte Bilder (z.B. Firmenlogos in der Kopfzeile) verzerrt gedruckt werden, obwohl sie am Bildschirm korrekt dargestellt werden.“

Das ist ein sehr guter Gedanke (danke Ute!) – allerdings: wenn ich bei einem Rechner den Drucker wechsle, ändert sich die Größe der Grafiken nicht – bei unterschiedlichen Geräten (Auflösung) schon. Was mich irritiert ist, dass wirklich die GRÖSSE verändert wird.

Und: in PowerPoint bleiben Größe und Seitenverhältnis.

Habe meine Jogginghose in die Waschmaschine gesteckt, damit sie weiß, was Bewegung ist.

Liebe Microsoftis. Frank Arend-Theilen hat darauf aufmerksam gemacht:

Von Excel 2010 zu 2013 wurde Power Pivot-Daten in ThisWorkbookDataModel umbenannt. Warum macht ihr so etwas? Und schreibt dann noch, wie man mit Suchen und Ersetzen die neuen Befehle erhält? Lasst die „alten“ Namen doch einfach so – alles andere bringt nur Ärger?

Ach so: der alte Name war nicht so ganz passend? Na – kein Problem – da lassen sich eine ganze Reihe von Begriffen finden, die etwas schräg sind.

Den Artikel findet man unter

https://support.microsoft.com/de-de/office/aktualisieren-von-powerpivot-datenmodellen-auf-excel-2013-oder-excel-2016-c66578cb-74d5-43ae-a474-5a01be5db439#__fix_upgrade_problems

Das Thema:

Immer wenn ich an mir zweifle, denke ich an die „Schutzfolie vor dem Verzehr entfernen“. Dann geht’s wieder.

Auf einem Tabellenblatt in Excel befinden sich verschiedene grafische Objekte – hier (von links nach rechts): ein Pictogramm, ein Diagramm, eine (Auto)Form, ein 3DModell und ein Foto:

Ich habe den Aufgabenbereich „Auswahl“ geöffnet. Man findet ihn über Start / Bearbeiten / Suchen und Auswählen / Auswahlbereich. Dort werden die Objekte aufgelistet; dort kann man den Namen ändern.

Über den Auswahlbereich kann man die grafischen Objekte ausblenden lassen:

Man kann sie auch mit der Tastenkombination [Strg] + [6] ausblenden. Und die Objekte über die gleiche Tastenkombination wieder einblenden. Gibt es einen Zusammenhang zwischen beiden Befehlen?

Nein! [Strg] + [6] und Auswahlbereich sind unabhängig. Wird über eine Option ausgeblendet, kann über die andere nicht eingeblendet werden. So, wie man ausblendet, muss man wieder einblenden!

Heißt: Werden die grafischen Objekte mit der Tastenkombination ausgeblendet, reagiert der Auswahlbereich nicht mehr.

Man sollte sich also gut merke, wie man ausblendet und SO wieder die Bilder, Diagramme und Formen wieder anzeigen lassen!

Übrigens: Amüsanter Nebeneffekt: Einblenden und Ausblenden aktiviert die Animation des 3D-Objekts:

http://www.excel-nervt.de/wp-content/uploads/2020/06/20200610_3D.mp4

Die ersten 40 Jahre der Kindheit sind immer die härtesten!

Ein Kunde möchte ein Formular in Excel haben. Die Eingabe soll nur in bestimmten Zellen möglich sein.

Kein Problem – Zellschutz aufheben, Blatt schützen. Allerdings ist in einigen Zellen längerer Text vorgesehen. Möglicherweise länger als die Formularvorgabe. Kein Problem: Beim Schützen des Blattes kann man das Formatieren der Zeilen erlauben. So kann der Anwender die Zeilenhöhe ändern.

Jedoch: JEDE Zeilenhöhe kann geändert werden. Schade, dass man hier nicht auch – wie bei den Zellen – nur bestimmte Zeilenhöhen sperren, beziehungsweise freigeben kann.

Ich habe mir vor vier Woche das Buch „reich werden durch Betrug“ online bestellt und bezahlt. Es kam bis heute noch nicht an.

Hallo Herr Martin,

ich wollte gerade Inhalte zwischen zwei Dokumenten kopieren mittels Kopieren / Einfügen von Zellinhalten.

Dies funktioniert jedoch leider nicht. Ich nutze die aktuelle Datei.

Ist dies unterbunden?

Kopieren – und ….
… nichts geht mehr“

Hallo Herr H.,

geht doch!? Ich weiß gar nicht was Sie wollen?

Schauen Sie selbst …

*lach*

Und hier die Auflösung:

Erinnern Sie sich an die „unschöne“ Formel, die in der Bearbeitungsleiste angezeigt wird? Ich habe die Bearbeitungsleiste ausgeschaltet.

Wenn man nun in eine andere Mappe wechselt wäre es doof, wenn DORT auch die Bearbeitungsleiste ausgeblendet ist. Also schalte ich beim Wechseln in eine andere Datei diese Leiste zur Sicherheit ein:

Private Sub Workbook_Activate()
Application.DisplayFormulaBar = False ' -- Bearbeitungleiste
End Sub

Private Sub Workbook_Deactivate()
Application.DisplayFormulaBar = True ' -- Bearbeitungleiste
End Sub

Sie wissen, dass man in Excel nach dem Kopieren sofort einfügen muss. Wenn man etwas anderes dazwischen macht, löscht Excel den Zwischenspeicher.

Eben – und HIER machen wir etwas anderes dazwischen. Ich sollte die Datei ändern … Mache ich gleich.

Wenn du mich mit deinem Auto beeindrucken willst, sollte es ein Eiswagen sein.

Hallo Herr Martin,

ich hoffe, Sue haben / hatten ein erholsames Wochenende.

Ich habe an meiner Prozesslandkarte weitergebastelt. Hierzu möchte ich den Abonnenten der Prozesslandkarte einen vereinfachten Interviewfragebogen zur Verfügung stellen. Diesen möchte ich gerne mit meinem Namen und / oder Logo versehen. Dieses soll für Nicht-Excel-Profis nicht löschbar sein. Also: Ich möchte ein Copyright Vermerk der nicht einfach herausgelöscht werden kann.

Hallo Herr H.,

Tippen Sie in eine beliebigen Zelle

=copyright

Achtung: OHNE KLAMMER!

Dann erscheint Ihr Name. DAS findet keiner wohin ich das versteckt habe.

Möchten Sie so etwas?

Und: was bekomme ich, wenn ich Ihnen verrate, wie ich das in diese Datei reinbekommen habe (und Sie es wieder rausbekommen)?

Hallo Herr Martin,

das ist ja cool!

Ich weiß schon, warum ich das mit Ihnen mache!

Aber jetzt mal raus mit der Sprache …. Wie geht das?

Hallo Herr Hämmerle,

kennen Sie Namen in Excel? Über den Namensmanager in der Registerkarte Formeln oder über das Namensfeld neben der Bearbeitungsleiste kann man einen Namen sehen und erstellen.

Über ein kleines Makro kann man einen unsichtbaren Namen definieren:

Sub MacheCopyright()

    ThisWorkbook.Names.Add Name:="copyright", RefersTo:="compurem Consulting", Visible:=False

End Sub

Über ein Makro (und nur ein Makro) kann man es wieder löschen.

Beim Speichern der Datei fragt Excel, ob Sie die Makros speichern wollen – die Antwort lautet: NEIN!

Hallo Herr Martin,

ich habe das Copyright-Makro in einem anderen Excel genutzt – klappt prima!

Die ganze Zeit die Angst, dass man seinem Ex begegnen könnte. Ich hasse es, den Garten umzugraben.

Manchmal bin ich selbst verblüfft.
Gestern: Outlook-Schulung. Ich beginne diese Schulungen immer mit dem Satz: „Es sehr viele unterschiedliche Darstellungen der Elemente. Die meisten Einstellungen finden Sie in der Registerkarte Ansicht.“
Im Laufe der Schulung kam folgende Frage: „Ich habe jeden Tag mehrere Teams-Einladungen. Ich muss im Kalender immer die Einladungen öffnen, auf den Link klicken. Am Abend sind dann ein halbes Dutzend Fenster offen, die ich einzeln schließen muss. Kann ich nicht auf den Link klicken OHNE die Einladung zu öffnen?
Die Antwort:
Blenden Sie im Kalender den Lesebereich ein. Dann können Sie auf den Link klicken ohne etwas zu öffnen oder zu schließen.

Der Teilnehmer war zufrieden.

PS: Manchmal (ich habe noch nicht herausgefunden, wann nicht), kann man auch über das Kontextmenü an der Teamsbesprechung teilnehmen.

Leg dich nie mit Dorfmenschen an! Die kennen Orte, wo man deine Schreie nicht hört!

Ich erstelle eine Tabelle mit Seitenumbrüchen und schaue sie mir in der Seitenvorschau an:

Erstaunlicherweise befindet sich eine Linie unterhalb der Tabelle. Ich schaue nach:

Eigentlich keine Linie. Oder doch?

Zwischen den Zeilen 29 und 30 habe ich die Linie nicht oberhalb der Zeile 30 erzeugt, sondern unterhalb der Zeile 29. Also: raus damit!

Und schon klappt es!

Früher als die Erde noch eine Scheibe war, konnte man die Idioten einfach vom Rand runterwerfen.

Hallo Rene,

ich habe ein Problem mit meiner Excelliste, die ich als Datensatz für die Visios nutze. Vielleicht hast Du dazu eine Idee.

Die Liste ist in der Dropbox gespeichert. Wir bearbeiten sie meistens online über die Dropbox Webseite mit „Excel for the web“, damit wir gemeinsam daran arbeiten können. Seit gestern habe ich das Phänomen, dass bei nur wenigen Einträge in die Liste, die Dateigröße massiv steigt. Und wenn ich nur eine leere Zeile einfüge, dann sogar von aktuell 2,3MB auf mehr als 18MB. So kann ich sie dann auch nicht mehr online öffnen. Mein Kollege kann das von seinem Rechner aus genauso beobachten.

Woran könnte das liegen?

Grüße, Gunnar

Hallo Gunnar,

Ich habe mal probiert – weder bei DropBox noch bei OneDrive habe ich Größenänderungen festgestellt.

Gegenfrage: mit [Strg] + [Ende] singt Excel auf die letzte gefüllte Zelle und nicht auf XFD1048576?

schöne Grüße
Rene

Wenn ich der alten Datei [Strg] + [Ende] drücke, lande ich in Zelle XFC823. In der Neuen bei AF558, also am Ende des befüllten Bereichs – viel besser.

Grüße

Mami – ist das Abendessen oder Dschungelprüfung?

In Outlook-Schulungen bin ich immer wieder verblüfft, was Teilnehmer gerne hätten. Oder umgekehrt: was Outlook nicht kann.

Ein Teilnehmer wollte seine Ordner farblich kennzeichnen. Oder mit Bildern versehen, damit er sie schneller findet.

Geht natürlich nicht. Geht auch nicht im Windows-Explorer. Auch wenn ich seinen Wunsch verstehe.

Ich verstehe auch folgenden Wunsch der Teilnehmerin: Wenn man im Outlook-Kalender Feiertage importiert, sind sie immer „frei“. Schön wäre es, wenn diese Feiertage für anderen Kollegen und Kolleginnen als gebucht gekennzeichnet wären.

Das kann man weder beim Import einstellen noch im Nachhinein mit einem Klick über die Listenansicht oder ähnliches umwandeln. Schade!

Urlaub 2020. Morgens 7:00 Uhr. Handtuch auf die Couch legen. Nicht, dass mein Platz später belegt ist.

Gegeben sei eine Tabelle die per Programmierung erzeugt wird. Sie hat Zwischenüberschriften.

Der Ausdruck ist etwas unglücklich, da die Zwischenüberschriften irgendwo auf der Seite stehen. Sie sollen immer am oberen Papierrand stehen.

Kein Problem: die Befehle für Seitenumbruch einfügen (die Zeilen werden natürlich „gesucht“ – die Zeilennummer berechnet), ist schnell gefunden:

ThisWorkbook.Worksheets(1).HPageBreaks.Add Before:=ThisWorkbook.Worksheets(1).Cells(5, 1)
ThisWorkbook.Worksheets(1).HPageBreaks.Add Before:=ThisWorkbook.Worksheets(1).Cells(30, 1)
ThisWorkbook.Worksheets(1).HPageBreaks.Add Before:=ThisWorkbook.Worksheets(1).Cells(51, 1)

Klappt. Die ersten vier Zeilen werden wiederholt.

Allerdings sollte die Tabelle auf eine Seite angepasst werden:

With ThisWorkbook.Worksheets(1).PageSetup
         .Zoom = False
         .FitToPagesWide = 1
 End With

Und was jetzt passiert entzieht sich meiner Kenntnis:

Ich schaffe es nicht die Seitenbreite = 1 einzustellen UND Seitenumbrüche einzufügen. Alle Versuche die Reihenfolge der Zeilen zu ändern, Application.PrintCommunication ein- oder auszuschalten, die Eigenschaft PageBreak auf xlPageBreakManual festzulegen … Alles scheitert. Also habe ich nachgesehen, wie „breit“ eine Seite ist. Hier: 60%. Und mit dem Befehl

ThisWorkbook.Worksheets(1).PageSetup.Zoom = 60

klappt es auch, wie man sehen kann:

Hier der ganze Code:

Sub SeiteEinrichten()
ThisWorkbook.Worksheets(1).ResetAllPageBreaks
ThisWorkbook.Worksheets(1).PageSetup.PrintArea = ""

Application.PrintCommunication = False
With ActiveSheet.PageSetup
    .PrintTitleRows = "$1:$4"
    .PrintTitleColumns = ""
End With

With ThisWorkbook.Worksheets(1).PageSetup
    .Zoom = False
    .FitToPagesWide = 1
End With

ThisWorkbook.Worksheets(1).HPageBreaks.Add Before:=ThisWorkbook.Worksheets(1).Cells(5, 1)
ThisWorkbook.Worksheets(1).HPageBreaks.Add Before:=ThisWorkbook.Worksheets(1).Cells(30, 1)
ThisWorkbook.Worksheets(1).HPageBreaks.Add Before:=ThisWorkbook.Worksheets(1).Cells(51, 1)


ThisWorkbook.Worksheets(1).PageSetup.Zoom = 60
ThisWorkbook.Worksheets(1).PageSetup.CenterHorizontally = False
Application.PrintCommunication = True

ThisWorkbook.Worksheets(1).PageSetup.LeftFooter = "Lebensmittel"
' -- Firmenname in der Fußzeile
End Sub

Ich spüre die Macht in mir! Kann aber auch Hunger sein.

Wenn einen Computer mit Windows 10 und Office 365 *pardon* Microsoft 365 hat, hat keine Langeweile. Jeden Tag etwas Neues. Ich sehe ein neues Symbol in meiner Taskleiste:

Wenn ich mit der Maus darüberfahre

wird mit erklärt, dass Microsoft Edge nun so aussieht. Aha. Lustig – mal ein neues Logo. Warum nicht jeden Tag ein neues? Dann ist die Welt nicht mehr so langweilig …

Und so schreibt mir Dominic:

Hallo Rene,

mir ist heute ein merkwürdiges Verhalten bei der Datenüberprüfung / Dropdown aufgefallen, hier hat sich scheinbar etwas in Excel verändert.

Ich habe eine Datei mit mehreren Tabellenblättern. In einer Spalte davon sind  über Datenüberprüfung à Wert aus Liste als Dropdown nur Werte aus einer Liste zugelassen. Diese Liste steht auf einem gesonderten Tabellenblatt.

Jetzt möchte ich aus jedem der Tabellenblätter eine neue Datei machen. Das Tabellenblatt „Dropdown“ soll dabei stets mitkopiert werden. Ich wähle also mit gedrückter Strg-Taste die Tabellenblätter „Region1“ und „Dropdown“ -> Rechtsklick -> Verschieben oder kopieren -> Häkchen bei „Kopie erstellen“ und (neue Arbeitsmappe).

Mein Problem: Jetzt ist die Datengültigkeit in der Spalte „Länderkürzel“ weg. Das war doch vor kurzem noch anders. Ich habe das für einen Kunden ursprünglich per Makro gemacht, also das Erstellen der neuen Dateien und dabei ist die Datengültigkeit stets erhalten geblieben. Plötzlich war sie immer weg.

Hast du das schon mal gesehen? Und hast du vielleicht irgendwo eine ältere Excel-Version, mit der sich nachprüfen lässt, ob das vor kurzem wirklich anders war? Habe Version 2004

Stimmt, Dominic,

ich habe mich vor Kurzem noch mit dem Problem rumgeschlagen, wenn ich nur das Blatt „Region1“ per VBA in eine neue Datei kopiere, verweist die Datenüberprüfung auf das Blatt der alten Datei.

Das Perfide: es wird nicht angezeigt.

Wenn ich die neue Datei speichere, schließe und wieder öffne, dann kommt die Meldung „Verknüpfung zu anderer Datei“. Und wenn ich die Datenüberprüfung ändere, wird in „Information“ mir immer angezeigt, dass eine Verknüpfung da ist. Man musste erneut speichern, schließen und öffnen, damit dieser Hinweis weg war.

Ich habe darüber geschrieben (Dez. 2019):

Und: ich habe hier einen Laptop 2001 – DAMIT ging es – bei meiner aktuellen 2004er und 2005er-Maschine passiert das Gleiche wie bei dir.

Lustig?!? danke an Dominic Dauphin für den Hinweis.

Schatz – wann gibt es Essen? – In einer Stunde; wenn du hilfst auch früher! – Eine Stunde ist okay.

Gemein! Der VBA-Befehl

Application.CommandBars(„ply“).Enabled = False

deaktiviert das Kontextmenü der Registerkarte. DAS funktioniert dann nicht mehr:

Da der Befehl zu Application, also zu Excel gehört, bleibt er auch für andere Dateien, die geöffnet werden, aktiv. So lange, bis man Excel schließt und wieder erneut öffnet. DANN steht das Kontextmenü wieder zur Verfügung.

Danke an Mourad Louha für diesen Hinweis.

Hab mir vor zwei Wochen eine Computermaus in Internet bestellt. Ist noch nicht da. Wenn ich bei hermes anrufe und frage, wann die Sendung mit der Maus kommt, legen die immer sofort auf. Was kann ich tun?

Wer so etwas macht wird mit dem Lesen der Seite „excel-nervt.de“ von nicht unter drei Tagen bestraft:

Das geht nicht, Leute – die Ordinantenachse (y-Achse) einfach rumzudrehen. Und so zu tun, als würde die Anzahl der verübten Morde sinken!

Quelle:

https://www.livescience.com/45083-misleading-gun-death-chart.html

Danke an Stefan Kleynemeyer für diesen Hinweis.

Ich bin ne Raupe / du bist ein Reh. / Ich werde ein Schmetterling, / und du wirst Filet.

Per Programmierung öffne ich eine andere Datei:

Workbooks.Open "D:\Bilanz.xlsm"

Ich möchte nicht, dass der Anwender dies sieht. Also verwende ich vor dem Öffnen den Befehl

Application.ScreenUpdating = False

Ich führe einige rechenintensive Operationen durch, die einige Sekunden (Minuten?) in Anspruch nehmen:

For i = 1 To 1000000
    strInhalt = ActiveSheet.Cells(i, 1).Value
Next i

Damit der Anwender sieht, dass etwas passiert, schreibe ich einen Text in die Statuszeile:

Application.StatusBar = "Excel nervt! - Bitte warten Sie ...    "

Was sieht man? Richtig: Gar nichts! Weil ich zuvor die Bildschirmaktualisierung ausgeschaltet habe. Zum Glück gibt es den Befehl

DoEvents

Damit klappt es wieder!

Ich: „Es geht nicht darum, wie häufig du fällst, sondern wie häufig du wieder aufstehst.“ Polizist: „So funktionieren aber Alkoholtests nicht.“

Seltsam. Wenn ich VBA programmiere, verwende ich NIE die Befehle Activate oder Select. Mit zwei Ausnahmen: ich programmiere Spunganweisungen: „wechsle für den Anwender auf ein bestimmtes Blatt oder auf eine bestimmte Zelle“. Oder: am Ende des Programms soll der Cursor auf einem bestimmten Blatt und/oder auf einer bestimmten Zelle sitzen. Ich setze Verweise auf Zellen:

Sub Kopieren_und_Fertig()
     Dim xlZelle As Range
     Dim i As IntegerSet

     Set xlZelle = ActiveSheet.Range("C2")

     For i = 1 To 50
         xlZelle.Copy Destination:=xlZelle.Offset(i, 0)
     Next

     MsgBox "fertig"

Ich starte das Makro von Excel aus:

Was passiert? man siehst nichts:

Auch wenn der Verweis auf ein anderes Tabellenblatt gesetzt wird:

Set xlZelle = ThisWorkbook.Worksheets(2).Range(„C2“)

Für den Befehl Inhalte einfügen sind zwei Zeilen Code nötig:

With xlZelle.Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="m,w,d"
End With

For i = 1 To 50
    xlZelle.Copy
    xlZelle.Offset(i, 0).PasteSpecial Paste:=xlPasteValidation
    Application.CutCopyMode = False
Next i

MsgBox "fertig"

Was geschieht hier:

Der Cursor wandert über den Bildschirm.

Ein Zucken ist auch am Bildschirm zu sehen, wenn die Inhalte auf einem anderen Tabellenblatt eingefügt werden:

Set xlZelle = ThisWorkbook.Worksheets(2).Range(„C2“)

Was tun? Klar: Die Bildschirmaktualisierung ausschalten. Dann funktioniert es! nichts zuckt; nichts zeigt sich …

Application.ScreenUpdating = False

Woran erkennt man, dass man zu viel mit Excel gearbeitet hat? Wenn man die Augen schließt und sich das Excel-Grid in die Netzhaut eingebrannt hat (Daniel Kogan – excelhero)

Verblüffend!

Man schreibe in eine Zelle den Text ‚WAHR. Das Ergebnis wird linksbündig als Text angezeigt. Das Gleiche passiert, wenn man eine Zelle als Text formatiert und anschließend mit den Buchstaben WAHR füllt.

Soweit so gut. Die Überprüfung mit der Funktion ISTTEXT bestätigt, dass ein Text in der Zelle steht; ISTLOG verneint die Existenz eines booleschen Wertes (WAHR oder FALSCH). Auch die Überprüfung mit =Zelle=WAHR und =ZELLE=“WAHR“, verneint das erste und bestätigt das zweite:

Irritierend ist nun, dass die Funktion ZÄHLENWENN 0 liefert, wenn man den TEXT „WAHR“ zählt:

Der Blick in den Funktionsassistenten irritiert:

Verblüffend!

Menschen, die mich vor 9 Uhr fragen, wie es mir geht, schauen auch mit dem Streichholz nach, ob noch Benzin im Tank ist.

Na, ein bisschen mehr Mühe hätte sich VBA schon geben können:

Anwendungs- oder objektorientierter Fehler. Na toll! Und wo? Und was?

Der Debugger hilft: die Berechnung Row – 8 ergibt einen falschen, nämlich negativen Wert (falsch gerechnet; nicht aufgepasst!) – so kann die Zelle „C-1“ nicht ermittelt werden.

Auch hier: Typen unverträglich!

Ey, VBA: sag mir doch deutlich, dass ich Dumpfbacke bei der Funktion MATCH (VERGLEICH) die beiden Parameter vertauscht habe. Während die Funktion der Zeile darüber (COUNTIF, ZÄHLENWENN) die Parameter ich suche wo wen verlangt, ermittelt MATCH / VERGLEICH: ich suche wen wo. Und keiner hilft mir! *lach*

Das Fitnessstudio habe ich bezahlt. Also sollte ich auch hingehen. Andererseits: das Sofa war auch nicht billig.

Wenn ich in VBA eine Zelle oder einen Zellbereich kopieren oder ausschneiden möchte, verwende ich die Methoden Copy, beziehungsweise Cut mit dem optionalen Parameter Destination, also beispielsweise:

ActiveCell.Copy

oder auch

ActiveCell.Copy

ActiveCell.Copy Destination:=ActiveCell.Offset(1, 0)

Wenn ich nun die Methode PasteSpecial (Inhalte einfügen) verwende, muss ich zwei Befehle schreiben:

ActiveCell.Copy
ActiveCell.Offset(1, 0).PasteSpecial Paste:=xlPasteValidation

beispielsweise um die Datenüberprüfung zu kopieren. Danach läuft um die kopierte Zelle eine „Ameisenlinie“:

Das würde nicht weiter stören – sie verschwindet bei den weiteren Befehlen. Aus ästhetischen Gründen und zur Sicherheit (es kann zu Problemen führen, wenn der Kopiermodus noch aktiv ist), schalte ich den Laufrahmen aus. Hierbei hilft

Application.CutCopyMode = False

Das Erstaunliche:

IntelliSense zeigt die Parameter False und True nicht an. Auf der Seite

https://docs.microsoft.com/de-de/office/vba/api/excel.application.cutcopymode

werden sie genannt:

Ich lese „SPÜLMASCHINENFEST“. Aber nicht wann, wo, Kosten? Weiß jemand mehr darüber?

Guten Tag Herr Martin,

ich hatte schon lange kein Problem mehr mit Excel, sicherlich auch dank Ihrer Kurse, die ich mir in LINDEDIN Learning immer wieder einmal ansehe.

Heute nun habe ich ein Problem, bei dem Sie mir vielleicht helfen können. Wenn es allerdings nicht so nebenher geht, dann können Sie mir dies gerne mitteilen, dann muss ich weiter forschen.

Ich möchte mir hervorgehobene Zellen zählen lassen, genau genommen, möchte ich beim Wahlverfahren D’Hondt sofort sehen, wie viele Sitze hat Liste 1, 2…

Möglicherweise geht es auch nicht mit dem Zählen der hervorgehobenen Zellen sondern anders.

Ich habe es mit SVERWEIS versucht, was leider dann ab der 5. Zeile ein „NV“ brachte – mir leider unverständlich. Mit INDEX und VERGLEICH komme ich auch nicht weiter, weil ich ja keine genaue Zeilen oder Spalenzahl angeben kann. Diese kann ja – je nach Höchstwert – variieren.

Ich sende Ihnen die Datei einmal zu und freue mich auf Ihre Antwort, kann aber auch verstehen, wenn Sie schreiben: Kann ich Ihnen nun leider nicht mitteilen, dauert zu lange…

Trotzdem danke für Ihr offenes Ohr.

Ich wünsche Ihnen noch einen schönen Tag.

Hallo Frau P.,

das ist eine hübsche Fingerübung.

Ein paar Anmerkungen:

1. man kann Farben in Excel nicht zählen. Und wenn ich jetzt von Ihnen die Funktion ZELLE höre – mit Einschränkungen ja. Aber – diese Funktion reagiert nicht auf Formatänderungen. Und: zeigt auch nicht alle Formate an!

2. Ich würde es klassisch mit SUMMEWENN lösen. SVERWEIS, INDEX & co greifen auf mehrere Spalten zu. Mit der neuen Funktion XVERWEIS kann man es auch lösen – aber ich weiß nicht, ob sie diese schon haben. Werfen Sie einen Blick auf meine Lösung in Spalten M:O, bzw. zusammengefasst in Spalte Q.

=KGRÖSSTE($B$6:$E$10;ZEILE(A1))
=SUMMENPRODUKT((M6=$B$6:$E$10)*ZEILE($A$1:$A$5))
=INDEX($A$6:$A$10;N6)

3. Für welches Beispiel/Land verwenden Sie das? Ich lese bei wikipedia, dass noch die Schweiz, Spanien, Portugal, Belgien, Polen und Finnland dieses Verfahren verwenden. Sie wissen, dass dies in Deutschland 1985 durch das Hare-Niemeyer-Verfahren abgelöst wurde. Ich hätte es nämlich fälschlicherweise in meinem Excel-Formelbuch erläutert … und dann gemerkt, das wir so (in Deutschland) gar nicht mehr rechnen.

zusammengefasst

Hallo Herr Martin,

herzlichen Dank für Ihre schnelle Rückmeldung und Ihren Vorschlag der Berechnung.

Ich habe es jetzt noch einmal nachgebaut und verstanden, obwohl ich niemals auf die Formel gekommen wäre.

Zu Nr. 3:

Ich weiß nur, dass die Hochschule Furtwangen den Vorschlag unserer Justiziarin aus Stuttgart aufgegriffen hat und diesen in ihrer Wahlordnung nun festgelegt hat. Wir haben bisher mit Hare-Niemeyer gewählt. Aber leider soll es auch bei D’Hondt bleiben, obwohl wir eine Hochschule mit drei Standorten sind und unserer kleinster Standort mit diesem Wahlverfahren ernste Schwierigkeiten bekommen könnte. Ich hatte das (als Wahlleitung) angemerkt, es bleibt trotzdem bei D’Hondt.

Ich wünsche Ihnen noch einen schönen Tag und weiterhin viel Erfolg bei Ihrer Arbeit.

Heute Vormittag eine Frau im Bus: „Nehmen Sie gefälligst den Hund weg. Wegen der Flöhe.“ Ich: „Komm Bello: die Frau hat Flöhe!“

Gestern gelesen:

Moin zusammen, habe eine Excel geerbt und möchte diese für einen schnelleren Start bereinigen. Es waren ne Menge Datenverbindungen drin, die ich bis auf eine auflösen konnte. Eine letze weigert sich hartnäckig, von mir gefunden zu werden. Habe bisher mit Strg+F alle (bis auf die eine) gefunden. Auch die Buttons habe ich untersucht, die Makros aus externen Datenquellen aufgerufen haben. Nun habe ich noch „Daten mit Hilfe einer Verbindung abrufen) probiert, leider erfolglos.

Hat noch jemand eine Idee?

besten Dank

Wie kann so etwas passieren? Angenommen man hat eine Datenüberprüfung oder eine Bedingte Formatierung mit ausgelagerten Werten auf einem anderen Tabellenblatt. Wird dieses Blatt nun verschoben, passiert Folgendes:

Und in Datei / Information kann man sehen, aber nicht löschen:

Wenn Sie die Verknüpfungen endgültig löschen, werden die Formeln und externen Bezüge in Werte umgewandelt. Da dies nicht rückgängig gemacht werden kann, sollten Sie Ihre Datei unter einem anderen Namen speichern. Sind Sie sicher, dass Sie die Verknüpfungen endgültig löschen möchten?

Und was passiert? – Nichts!

Neben Formeln, Datenüberprüfung oder eine Bedingter Formatierung sind auch Namen eine Quelle von Verknüpfungen auf externe Dateien.

Martin Weiß (der tabellenexperte) listet sie alle auf:

https://www.tabellenexperte.de/die-suche-nach-der-externen-verknuepfung/

Männerfreundschaft. Ein Mann kommt am Morgen nach Hause. Seine Frau fragt ihn, wo er geschlafen hat. „Bei einem Freund“. Daraufhin ruft seine Frau zehn seiner besten Freunde an. Bei sechs hat er geschlafen, bei vieren schläft er noch.

Zusammenfassung: Weil schon mehrere gefragt und kommentiert haben:

Der Gruppenmodus in Excel ist eigentlich eine praktische Sache. Eigentlich! Mit gedrückter [Strg]- oder [Umschalt]-Taste kann man in Excel mehrere Tabellenblätter markieren. Ebenso über das Kontextmenü „Alle Blätter auswählen“. Und dann auf mehreren Blättern gleichzeitig arbeiten. Auf ein andere Tabellenblatt gelangt man mit der Tastenkombination [Strg] + [Bild ­ ↓] beziehungsweise mit [Strg] + [Bild ↑ ]. Das bedeutet: drückt man: [Umschalt] + [Strg] + [Bild ­ ↓] beziehungsweise [Umschalt] + [Strg] + [Bild ↑ ] (bei Excel für Windows) so wird das aktuelle Blatt und das danebenliegende Blatt markiert.

Manchmal ist es schlecht zu sehen. Man erkennt es aber immer an der Titelzeile: DORT steht „Gruppe“:

Übrigens: ausgeblendete Blätter werden nicht selektiert, wenn alle Blätter ausgewählt werden.

Der Gruppierungsmodus, beziehungsweise die Mehrfachselektion bewirkt, dass einige Dinge nicht mehr eingefügt werden können: Dazu gehören:

  • Intelligente Tabelle
  • Diagramme
  • Bilder, Piktogramme, Formen, SmartArts, 3D-Modelle
  • Formeln (als Symbole also als Grafik)
  • Screenshots
  • 3D-Karten
  • Sparklines
  • Datenschnitt und Zeitachse
  • Links
  • Kommentare und Notizen
  • Druckbereich
  • Hintergrund
  • Spur zum Vorgänger/Nachfolger
  • Power Query
  • Gruppierungen
  • Datenüberprüfung
  • Bedingte Formatierung

Außerdem funktionieren nicht mehr:

  • Sortieren
  • Filtern
  • Text in Spalten
  • Duplikate entfernen
  • Konsolidieren
  • Was-wäre-wenn-Analyse
  • Beziehungen
  • Blattschutz

Nach meinem Tod werde ich wahrscheinlich sehr beschäftigt sein. Die Liste der Menschen, die ich dann heimsuchen werde, wird immer länger.

Vor Kurzem hatte den Fehler schon einmal.

Die Methode ‚Visible‘ für das Objekt ‚_Worksheet‘ ist fehlgeschlagen.

Ich wollte per VBA ein Blatt ausblenden. Damals war die Ursache, dass dieses auszublendende Blatt das einzige war – DAS geht nicht. Eine Exceldatei benötigt immer mindestens ein sichtbares Tabellenblatt.

Nun erhalte ich die Fehlermeldung erneut.

Die Ursache diesmal: Die Arbeitsmappe ist geschützt (Überprüfen / Arbeitsmappe schützen).

Ei rät nicht. Eiweiß.

Excel nervt mal wieder. Kennst du das? Die Funktion DEZINBIN, die Dezimalzahlen in Binärzahlen verwandelt hat eine Obergrenze. Nach 511 ist Schluss:

Auf der Seite

https://im-coder.com/dezimal-zu-binaer-konvertierung-fuer-grossen-zahlen-in-excel.html

Findet man eine Lösung zur Erweiterung:

=DEZINBIN(REST(QUOTIENT($A$13;256^4);256);8)&DEZINBIN(REST(QUOTIENT($A$13;256^3);256);8)&DEZINBIN(REST(QUOTIENT($A$13;256^2);256);8)&DEZINBIN(REST(QUOTIENT($A$13;256^1);256);8)&DEZINBIN(REST(QUOTIENT($A$13;256^0);256);8)

Nicht sehr komfortabel, denkt Christian Neuberger, der auf unserem Excelstammtisch andere Lösungen vorgestellt hat.

Wenn die Anzahl der Stellen fest sein soll, beispielsweise 40, könnte man die Zahl mit der Funktion SEQUENZ umwandeln:

=TEXTKETTE(KÜRZEN(REST(A15/2^SEQUENZ(40;;40-1;-1);2)))

In A15 befindet sich die Zahl, die konvertiert werden soll.

Kann man das variabel halten, fragt er sich? Klar – mit einer Hilfszelle (hier: A16):

Die Formel:

=TEXTKETTE(KÜRZEN(REST(A15/2^SEQUENZ(A16;;A16-1;-1);2)))

oder auch ohne Hilfszelle:

=TEXTKETTE(KÜRZEN(REST(A15/2^SEQUENZ(KÜRZEN(LOG(A15;2)+1);;KÜRZEN(LOG(A15;2));-1);2)))

Eine sehr, sehr clevere Lösung!

Vielen Dank an Christian Neuberger, der mithilft, dass Excel nicht mehr ganz so nervt …

Mein Elan-Empfang ist heute wieder schlecht. Und mein Tatenvolumen ist schon aufgebraucht.

Mal nichts Nervendes. Ein Gimmick zum Schmunzeln:

Vor Kurzem habe ich folgenden Text gefunden:

D1353 M1TT31LUNG Z31GT D1R, ZU W3LCH3N GRO554RT1G3N L315TUNG3N UN53R G3H1RN F43H1G 15T! 4M 4NF4NG W4R 35 51CH3R NOCH 5CHW3R, D45 ZU L353N, 483R
M1TTL3W31L3 K4NN5T DU D45 W4HR5CH31NL1ICH 5CHON G4NZ GUT L353N, OHN3 D455 35 D1CH W1RKL1CH 4N5TR3NGT. D45 L315T3T D31N G3H1RN M1T 531N3R 3NORM3N L3RNF43HIGKEIT. 8331NDRUCK3ND, OD3R? DU D4RF5T D45 G3RN3 KOP13R3N, W3NN DU 4UCH 4ND3R3 D4M1T 83G315T3RN W1LL5T

Kann man / kann ich selbst solche Texte produzieren? Mit Excel natürlich! Klar die Funktion WECHSELN hilft dabei:

Ich trage einen Text in die Zelle A3 ein. Die Funktion GROSS verwandelt ihn in Großbuchstaben. In den Zelle C1:G2 stehen die Werte E, I, S, B und A, die durch 3, 1, 5, 8 und 4 ersetzt werden. In C3 befindet sich die Formel

=WECHSELN(B3;C1;C2)

Rüberziehen. Und sich über das Ergebnis freuen:

4L5 GR3GOR 54M54 31N35 MORG3N5 4U5 UNRUH1G3N TRÄUM3N 3RW4CHT3, F4ND 3R 51CH 1N 531N3M 83TT ZU 31N3M UNG3H3U3R3N UNG3Z13F3R V3RW4ND3LT. 3R L4G 4UF 531N3M P4NZ3R4RT1G H4RT3N RÜCK3N UND 54H, W3NN 3R D3N KOPF 31N W3N1G HO8, 531N3N G3WÖL8T3N, 8R4UN3N, VON 8OG3NFÖRM1G3N V3R5T31FUNG3N G3T31LT3N 84UCH, 4UF D3553N HÖH3 51CH D13 83TTD3CK3, ZUM GÄNZL1CH3N N13D3RGL31T3N 83R31T, K4UM NOCH 3RH4LT3N KONNT3. 531N3 V13L3N, 1M V3RGL31CH ZU 531N3M 5ON5T1G3N UMF4NG KLÄGL1CH DÜNN3N 831N3 FL1MM3RT3N 1HM H1LFLO5 VOR D3N 4UG3N.

Wir werden die erste Generation sein, die eine Handyhalterung am Rollator hat.

Ich erstelle ein großes, komplexes Formular (UserForm) in VBA, starte es zum Testen und:

Unerwartetes Dateiende.

Etwas differenziertes dürfte es schon sein. Vor allem dürfte der Debugger starten, der mir die Zeile kennzeichnet, in der der Fehler erzeugt wurde.

PS: Der Fehler kam dadurch zustande, dass ich ein Objekt adressiert hatte, das nicht in einer Sammlung vorhanden war. Ich habe den Fehler im Einzelschrittmodus gefunden.

Mein Vater hat ein Computerproblem und möchte, dass ich es telefonisch mit ihm löse. Ich wünsche allen noch einen schönen Sommer.

Kennst du den Beitrag

https://support.office.com/de-de/article/microsoft-editor-pr%c3%bcft-die-grammatik-und-mehr-in-dokumenten-%d0%b5-mails-und-im-internet-91ecbe1b-d021-4e9e-a82e-abc4cd7163d7?ui=de-DE&rs=de-DE&ad=DE&fbclid=IwAR3u_0WEe1WaLjHdbEDUw35Xpb7wjkoWr3k9t95nicl3aBiZhSIl_QfHwtk

Microsoft beschreibt darin seine überarbeitete Rechtschreib- und Stilprüfung. Schade nur, dass sie sie selbst nicht verwenden. Ich lese auf der Seite Stilblüten wie:

* Microsoft Editor ist ein Dienst mit AI-Leistung, mit dem Sie Ihren besten Writer in mehr als 20 Sprachen hervorbringen können

* Mit dem kostenlosen Service können Sie die Grundlagen von Grammatik und Rechtschreibung festnageln.

* … beim Verfassen und korrigieren …

* Oder Sie können sich mit Ihrem Microsoft 365-Konto anmelden, um über die Grundlagen hinaus zu verbreitet zu sein, einschließlich Statistiken zur Lesbarkeit.

Okay – ich gestehe: sie haben es bemerkt und korrigiert. Manchmal dauert es ein bisschen …

So wie ich Anfang dieser Woche über den „Pries“ (statt „Preis“) gespottet hatte – auch das ist korrigiert:

Wie man seinem Gegenüber Respekt erweist: 19. Jhd: Verbeugen und Hut ziehen; 20. Jhd: aufstehen und grüßen; 21. Jhd: Ohrstöpsel ziehen.

Kennt ihr das? Wenn ich schnell etwas zeigen oder ausprobieren oder testen möchte, bin ich immer um Namen verlegen. Suche immer nach Datennamen, Überschriften, Bezeichnungen, … Es gibt Menschen, bei denen dann alles „Test“ heißt: Test1, Test2, … Ich verwende gerne zwei oder drei gleiche Buchstaben. Meine Testmakros in VBA heißen „xxx“. Meine Testdateien „ttt“. Schnell getippt.

Nun wollte ich etwas probieren. Ich habe eine Liste:

Ich ändere die Überschrift in „ppp“:

Bestätige:

Schaue verdutzt! Ist das immer so? Macht Excel immer so einen merkwürdigen Haken bei „ppp“? Gehe zu einem anderen Rechner: Nö – dort nicht! Ich überlege. Stimmt: es ist schon sehr, sehr lange her, da habe ich für einen Fachartikel in Word häufig den griechischen Buchstaben π benötigt. Und ihn deshalb in die AutoKorrektur gelegt. Auf einen Text, den es in der deutschen Sprache nicht gibt: „ppp“.

Während Word mit dem SmartTag anzeigen würde, dass dieser Text durch die AutoKorrektur entstanden ist (und dort auch wieder gelöscht werden kann):

zeigt Excel es leider nicht an. Ich habe darüber berichtet:

https://www.excel-nervt.de/man-muss-nicht-alles-glauben-was-stimmt/

Diesmal kann ich nicht Excel beschimpfen. Sondern muss mich an der eigenen Nase fassen, weil ich nicht aufgepasst habe …

Es gibt gute Gründe mit mir befreundet zu sein. Zum Beispiel wirkt man neben mir echt sympathisch.

Ich bin in den Microsoft-Produkten – vor allem in Microsoft 365 häufig erstaunt und frage mich oft: „war das früher schon drin und habe ich es nicht gesehen.“ Ich weiß es oft nicht!
Schon aufgefallen? Markiert man in Excel eine Spalte

wird 1S im Namensfeld angezeigt. Zieht man weiter nach rechts und wieder zurück ist zu lesen: 1048576Z x 1S

Jetzt im Kontextmenü. Lässt man die Maus los, steht der Name der aktiven Zelle im Namensfeld.

In einigen Excelversionen steht der markierte Bereich, wenn mehrere Spalten ausgewählt wurden, im Namensfeld:

bei anderen werden sie über ein Tooltip angezeigt. Und eben nur die aktive Zelle.

Danke an Angelika Meyer für den Hinweis.

Ich habe die Eier weggeschmissen – die hatten schon Pelz. – Das waren Kiwis.

Verblüfft!
Ich mache Word auf und finde in der Registerkarte „Start“ ein Symbol „Editor“. Neugierig wie ich bin, klicke ich darauf. Aha – die Rechtschreibprüfung! Ich schaue in der Registerkarte „Überprüfen“ nach – tatsächlich – dort auch! „Editor“! Nicht mehr „Rechtschreibprüfung“. Zitternd öffne ich Excel: „uff – dort haben wir noch das „alte“ Symbol mit der „alten“ Beschriftung „Rechtschreibung“. In PowerPoint, Outlook, Visio, Access ebenso.

Frage 1: Warum macht Microsoft so etwas?

Frage 2: Ändern die das auch in den anderen Programmen?

Habe gestern zwei Biber beim Abendessen beobachtet. Es gab Steg.

Erstaunlich!

Die Aufgabe lautet: Wir haben in CorelDraw technische Geräte erstellt – diese sollen in Visio nachbearbeitet werden, so dass man sie verwenden kann. Ich schaue sie mir an. Das Rack ist zu groß für den Schrank:

Also verkleinern. Das Dumme ist: Durch das Verkleinern des Objektes wird die Schriftgröße (und Linienstärke) nicht verkleinert, weil diese Formatierungsattribute unabhängig von der Größe sind. Das heißt: die Schrift ist zu groß:

Also zurück auf Originalgröße. Einige der Texte sind in 3 pt formatiert:

Wenn ich sie auf 10% verkleinere, also auf 0,3 pt – weigert sich Visio:

Setzt die Schriftgröße ungefragt auf 1 pt zurück.

Was würde Excel machen? Eine Fehlermeldung! DAS ist vernünftig:

Lob an Excel! Schelte an Visio!

Zugegeben: ich musste in Excel noch nie eine Schriftgröße < 1 pt wählen …

Nachtrag: ich habe die Originalzeichnung in CorelDraw bearbeitet: Dort die Schrift in Kurven konvertiert und anschließend erneut nach Visio exportiert. Dann wird die Schrift beim Verkleinern des Objekts auch verkleinert.

Bevor du mit dem Kopf durch die Wand gehst, überlege, was du im Nebenzimmer willst.

Kennt ihr das? Manchmal liefert Outlook beim Suchen nicht alle Ergebnisse. Oder filtert nicht korrekt. Es bleibt immer das Gefühlt, dass die Maschine im Hintergrund schneller läuft als Ergebnisse an der Oberfläche angezeigt werden können. Dieser Screenshot zeigt es: Im Ordnerbereich wird eine ungelesene Mail angezeigt – die Filterung über die Registerkarten liefert 0 ungelesen Mails. Ja – was nun?

Alle 11 Minuten isst ein Single ein paar Chips.

Perfide! Ich erhalte eine CSV-Datei und öffne sie per Doppelklick in Excel – alles prima:

Bei einer anderen Datei jedoch:

Werden Umlaute und Sonderzeichen (€) „zerschossen“. Da eine CSV-Datei eine Textdatei ist, lohnt sich ein Blick in den Editor. Wurde das Dateiformat auf ANSI oder UTF-8 mit BOM ( Byte Order Mark) eingestellt, funktioniert alles prima. Jedoch bei „reinem“ UTF werden Sonderzeichen nicht korrekt codiert.

Ein Öffnen mit dem Konvertierungsassistenten würde helfen – dort kann man die Codierung explizit angeben.

PowerQuery und VBA wären weitere Lösungswege:

Aber Excel hat keine Einstellungsoptionen, die dieses Format richtig erkennt und interpretiert. Ärgerlich, wenn ein System SOLCHE CSV-Dateien liefert …

Danke an Andreas Thehos für dieses Hinweis!

Aus Versehen mit leerem Magen einkaufen gegangen. Bin jetzt stolzer Besitzer der Regale 4 bis 11.

Wie oft predige ich: „Bitte verwenden Sie nur die vorhandenen Steuerelemente. Keine anderen. Kein ActiveX und auch keine sonstigen Formularsteuerelemente. Das kann nur Ärger geben.“

Und es gab Ärger. Bei der Umstellung auf Office 365 liefen einige Formulare nicht mehr. Der Grund: Klickt man im Entwurfsmodus auf eine Fortschrittsanzeige (Progressbar), erscheint eine Fehlermeldung. Die Ursache: der Speicherort dieses Steuerelements war an einem anderen Ort – bei der Umstellung haben noch andere Programme Dateien für ihren Zweck „verschoben“ …

Rettet die Erde, auf anderen Planeten gibt es keine Schokolade.

Anruf eines verzweifelten Anwenders. Die Bank, für die er arbeitet, stellt um auf Office 365. Ich glaube von Office 10. Einige Makros in Word funktionieren nicht mehr. Er zeigt es mir online. Altes System: Läuft. Neues System: Nichts läuft.

Ich schaue es mir an und finde sehr schnell:

Ein Modul AutoNew mit einer Main-Prozedur. Mann – das ist sowas von 1997! Ist mir noch nicht aufgefallen – dass diese uralt Automakros nicht mehr funktionieren. Nein – da verwenden wir doch die Ereignisse „Document_Open()“ und „Document_New()“. Damit klappt es dann auch. Der Anwender war glücklich!

Meine Lehrer haben früher meine unleserliche Handschrift korrigiert. Das lag aber nicht an mir, sondern an der Fahrweise des Busfahrers.

Ein Telefongespräch: „Hallo Herr Martin, haben Sie meine Mail erhalten?“ – „Nein, antworte ich wahrheitsgemäß.“ – „Seltsam – ich habe die doch letzte Woche an Sie geschickt!“ – „An welche Adresse?“ Sie liest die Email-Adresse vor – meine neue, die ich seit zirka drei Monaten habe. Hängt mit den verschiedenen Microsoft-Paketen zusammen … anderes Thema. Ich schaue noch einmal nach – nichts! Auch nicht im Spam-Ordner. Ich verabschiede mich mit einem „Vielen Dank für den Hinweis – ich prüfe das mal.“ Und fange an zu prüfen:

Sende mir selbst eine Mail an besagte Adresse. Kommt an.

Bitte meinen Freund von einem anderen Rechner von seinem Account mir einem Mail zuzusenden. Kommt an. Ich schaue genau hin. Mein Postfach in Outlook der Adresse, die auch im Impressum zu finden ist, sieht so aus:

Meine „neue“ Mailadresse weist folgendes Postfach in Outlook auf:

Und tatsächlich: in der Registerkarte „Sonstige“ finde ich auch die Mail der Dame, mit der ich telefoniert hatte. Ich könnte platzen: Wer macht denn so etwas? „Relevant“ als Standardoption in Outlook? Aber nicht bei allen Konten? Und – wer entscheidet, was relevant ist? Schließlich habe ich der Frau schon eine Einladung zu einer Teams-Besprechung geschickt. So unrelevant kann das wohl nicht sein!

Schatz, sieht man es mir an, dass ich schon lange nicht mehr beim Friseur war? – Kinder kommt mal her – der Wischmopp kann sprechen!

So nicht! Wer so etwas macht, wird auf meiner Seite excel-nervt an den Pranger gestellt:

Danke an Mourad Louha für das Bild. Und den Hinweis für alle, die es nicht gesehen haben: die Säule mit 116 ist höher als die Nachbarsäulen mit 114 und 129 und 190. Übrigens: auch das bitte nicht:

Gefunden:

http://freerangestats.info/blog/2020/04/06/crazy-fox-y-axis?fbclid=IwAR1Eajr0InBJwFqTzvyyZwn1jA3VteRPDd95YI7OKzszFwDnQkTmer7bO9M

Und wie macht man so etwas in Excel? Nun – entweder einfach die Datenbeschriftung per Hand ändern:

Oder mit zwei Spalten, wobei die zwei Säulenreihe transparent formatiert wird und „hinter“ die erste, sichtbare Reihe geschoben wird. Von der unsichtbaren werden die Werte angezeigt.

Und noch einmal deutlich: WER DAS MACHT WIRD AN DEN PRANGER GESTELLT!

Hunde geben einem so viel zurück – beispielsweise Blumenzwiebeln, die man letzte Woche eingepflanzt hat.

Ich erstelle einen Dialog und erstelle eine Schaltfläche, die es ermöglicht, die Werte zu sortieren:

Ich verwende eine Code, den ich im Internet gefunden habe:

Private Sub cmdSort_Click()
     Dim i As Integer
     Dim listMatrix As Object, varDaten As Variant
     Set listMatrix = CreateObject("System.Collections.ArrayList")

For i = 0 To Me.lstAuswahl.ListCount - 1
    listMatrix.Add Me.lstAuswahl.List(i)
Next i

listMatrix.Sort
Me.lstAuswahl.Clear ' -- Auswahlliste leeren

For Each varDaten In listMatrix
    Me.lstAuswahl.AddItem varDaten
Next varDaten

If Me.lstAuswahl.ListCount > 0 Then
    Me.lstAuswahl.ListIndex = 0
End If

Set listMatrix = Nothing
End Sub

Klappt wunderbar – allerdings:

ArrayList ist ein Objekt von .NET-Framework 3.5. Ist dieses nicht auf einem Rechner installiert, funktionieren die Befehle der Klasse auch nicht:

Also – raus damit – und die „klassische“ Variante:

Private Sub cmdSort_Click()
Dim intLast As Integer, intNext As Integer
Dim strTemp As String
With Me.lstAuswahl
For intLast = 0 To .ListCount – 1
For intNext = intLast + 1 To .ListCount – 1
If .List(intLast) > .List(intNext) Then
strTemp = .List(intLast)
.List(intLast) = .List(intNext)
.List(intNext) = strTemp
End If
Next intNext
Next intLast
End With
End Sub

Wenn der Staubsauger den Vorhang fressen will, kämpft ihr auch bis zum Limit anstatt ihn auszuschalten?

Hallo Herr Martin,

folgende Frage zu Excel 2019:

ich habe im Diagramm das Gitternetz relativ eng gewählt und möchte die Beschriftung der Achsen weniger eng wählen. Die Beschreibung von MS ist leider für mich nicht zielführend.

Können Sie mir eine Hilfestellung geben?

Viele Grüße

p. s.: ich kenne mich an sich einigermaßen mit Excel aus

Hallo Herr A.,

Sie können doch ein Hauptgitter und ein Hilfsgitter einschalten:

Die Abstände der Achsenbeschriftung werden über die Achsenoptionen festgelegt. Dort finden Sie auch die Abstände der Hilfsgitternetzlinien:

Hilft Ihnen das?

Hallo Herr Martin,

so einfach ist es, wenn man es weiß.

Recht vielen Dank für Ihre Hilfe.

Viele Grüße

Polizei: „Ihre Reifen sind aber ganz schön abgefahren.“ Ich: „danke. Ihr Blaulicht fetzt aber auch gut.“

Ich habe mal wieder nicht aufgepasst!

Kennst du den Spezialfilter (Daten / Sortieren und Filtern / Erweitert)? Er erlaubt beispielsweise Unikate aus einer Liste herauszufiltern:

Der dahinterliegende VBA-Befehl lautet AdvancedFilter. Er ist ein Befehl (eine Methode des Zellbereichs) und einfach zu programmieren. Okay – er ist – bei großen Datenmengen – nicht sehr schnell – aber für „Kleinigkeiten“ sehr gut geeignet:

Dim xlBlatt As Worksheet
Dim xlQuellbereich As Range
Dim xlZielZelle As Range

Set xlBlatt = ActiveSheet
Set xlQuellbereich = xlBlatt.Range("A1").CurrentRegion
Set xlZielZelle = xlBlatt.Range("E1")

xlQuellbereich.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=xlZielZelle, Unique:=True

Anschließend kann man Spalte A:D löschen; die Ergebnisse sortieren, weiter verarbeiten …

Was passiert allerdings, wenn mein System keine Daten liefert? Eine leere Datenquelle:

Die Antwort: DANN läuft der Spezialfilter an die Wand! Also: aufpassen! Vorher überprüfen, ob WIRKLICH Daten vorhanden sind (xlQuellbereich.Rows.Count > 1). Sonst passiert das:

Wer schon mal einen Kaugummi aus seinen Kleidern entfernen musste, hat eine ungefähre Vorstellung davon wie ist, wenn ich aufstehe.

Wie gemein! Eine Kopfzeile in einem Tabellenblatt in Excel:

Ich fülle diese Kopfzeile in Excel mit VBA:

Dim strTitle As String
Dim strLocation As String
Dim strTarget As String
Dim strType As String

' -- die Variablen werden gefüllt:
strTitle = "Renes Titel"
strLocation = "Renes Ort"
strTarget = "Renes Ziel"
strType = "Renes Typ"

With ActiveSheet.PageSetup
' -- schreibe nur rein, falls der Text noch nicht drinsteht.
    If InStr(1, .LeftHeader, "Title" & strTitle) = 0 Then
        .LeftHeader = Replace(.LeftHeader, "Title", "Title " & strTitle)
    End If
    If InStr(1, .LeftHeader, "Location" & strLocation) = 0 Then
        .LeftHeader = Replace(.LeftHeader, "Location", "Location " & strLocation)
    End If
    If InStr(1, .LeftHeader, "Target group" & strTarget) = 0 Then
        .LeftHeader = Replace(.LeftHeader, "Target group", "Target group " & strTarget)
    End If
    If InStr(1, .LeftHeader, "Document type" & strType) = 0 Then
        .LeftHeader = Replace(.LeftHeader, "Document type", "Document type " & strType)
    End If
End With

Klappt:

Ich fülle sie ein zweites Mal. Klappt. Ein drittes Mal. Fehler:

Die LeftHeader-Eigenschaft des PageSetup-Objektes kann nicht festgelegt werden.

Hä?

Ich „schaue nach“, was in der Kopfzeile steht:

MsgBox ActiveSheet.PageSetup.LeftHeader

Stimmt – ich erinnere mich – die Formatierungsanweisungen stehen vor den Texten. Abgesehen davon, dass ich nicht mehrfach die Texte in die Kopfzeile schreiben darf, muss ich die Kopfzeile anders erzeugen:

ActiveSheet.PageSetup.LeftHeader = _
„&““Arial,Fett““&12“ & „Title “ & strTitle & Chr(10) & _
„&10“ & „Document type “ & strType & Chr(10) & _
„Target group “ & strTarget & Chr(10) & _
„Location “ & strLocation

Und DAS klappt:

Böse, böse, böse! Böses Excel!

Ich erinnere mich – ich habe vor einigen Jahren schon einmal über diese merkwürdigen Kopf- und Fußzeilen geschrieben:

Ich beurteile Menschen nicht nach Aussehen, Hautfarbe oder Religion. Sondern wie sie sich benehmen, wenn eine zweite Kasse geöffnet wird.

Das ist bösartig! In einem Exceldokument sollen Werte von Eigenschaftsfeldern, die von SAP kommen, in die Kopfzeile geschrieben werden. Also von:

Nach:

Der Befehl für diese Felder ist schnell gefunden:

ContentTypeProperties(„Target group“)

Das Makro:

Dim strTitle As String
Dim strLocation As String
Dim strTarget As String
Dim strType As String

strTitle = ThisWorkbook.BuiltinDocumentProperties("Title").Value
strLocation = ThisWorkbook.ContentTypeProperties("Location").Value
strTarget = ThisWorkbook.ContentTypeProperties("Target group").Value
strType = ThisWorkbook.ContentTypeProperties("Document type").Value

If strTitle <> "" Then strTitle = " " & strTitle
If strLocation <> "" Then strLocation = " " & strLocation
If strTarget <> "" Then strTarget = " " & strTarget
If strType <> "" Then strType = " " & strType

With ActiveSheet.PageSetup
    .LeftHeader = Replace(.LeftHeader, "Title", "Title" & strTitle)
    .LeftHeader = Replace(.LeftHeader, "Location", "Location" & strLocation)
    .LeftHeader = Replace(.LeftHeader, "Target group", "Target group" & strTarget)
    .LeftHeader = Replace(.LeftHeader, "Document type", "Document type" & strType)
End With

Ein Durchlauf mit leeren Feldern – klappt! Ein Durchlauf mit Daten bringt die Fehlermeldung 13: Typen unverträglich. Ich stutze. Ich untersuche die Inhalte. tatsächlich: die Daten, die aus Sharepoint kommen, sind keine Texte, sondern Datenfelder. Bestehend aus zwei Werten: Inhalt und ID. Sieht man aber nicht:

Nun das kann man abprüfen:

Dim strTitle As String
Dim strLocation As String
Dim strTarget As String
Dim strType As String

If TypeName(ThisWorkbook.BuiltinDocumentProperties("Title").Value) = "String()" Then
    If UBound(ThisWorkbook.BuiltinDocumentProperties("Title").Value) >= 0 Then
        strTitle = ThisWorkbook.BuiltinDocumentProperties("Title").Value(0)
    End If
ElseIf TypeName(ThisWorkbook.BuiltinDocumentProperties("Title").Value) = "String" Then
    strTitle = ThisWorkbook.BuiltinDocumentProperties("Title").Value
End If

If TypeName(ThisWorkbook.ContentTypeProperties("Location").Value) = "String()" Then
    If UBound(ThisWorkbook.ContentTypeProperties("Location").Value) >= 0 Then
        strLocation = ThisWorkbook.ContentTypeProperties("Location").Value(0)
    End If
ElseIf TypeName(ThisWorkbook.ContentTypeProperties("Location").Value) = "String" Then
    strLocation = ThisWorkbook.ContentTypeProperties("Location").Value
End If

If TypeName(ThisWorkbook.ContentTypeProperties("Target group").Value) = "String()" Then
    If UBound(ThisWorkbook.ContentTypeProperties("Target group").Value) >= 0 Then
        strTarget = ThisWorkbook.ContentTypeProperties("Target group").Value(0)
    End If
ElseIf TypeName(ThisWorkbook.ContentTypeProperties("Target group").Value) = "String" Then
    strTarget = ThisWorkbook.ContentTypeProperties("Target group").Value
End If

If TypeName(ThisWorkbook.ContentTypeProperties("Document type").Value) = "String()" Then
    If UBound(ThisWorkbook.ContentTypeProperties("Document type").Value) >= 0 Then
        strType = ThisWorkbook.ContentTypeProperties("Document type").Value(0)
    End If
ElseIf TypeName(ThisWorkbook.ContentTypeProperties("Document type").Value) = "String" Then
    strType = ThisWorkbook.ContentTypeProperties("Document type").Value
End If

If strTitle <> "" Then strTitle = " " & strTitle
If strLocation <> "" Then strLocation = " " & strLocation
If strTarget <> "" Then strTarget = " " & strTarget
If strType <> "" Then strType = " " & strType

With ActiveSheet.PageSetup
' -- schreibe nur rein, falls der Text noch nicht drinsteht.
    If InStr(1, .LeftHeader, "Title" & strTitle) = 0 Then
        .LeftHeader = Replace(.LeftHeader, "Title", "Title" & strTitle)
    End If
    If InStr(1, .LeftHeader, "Location" & strLocation) = 0 Then
        .LeftHeader = Replace(.LeftHeader, "Location", "Location" & strLocation)
    End If
    If InStr(1, .LeftHeader, "Target group" & strTarget) = 0 Then
        .LeftHeader = Replace(.LeftHeader, "Target group", "Target group" & strTarget)
    End If
    If InStr(1, .LeftHeader, "Document type" & strType) = 0 Then
        .LeftHeader = Replace(.LeftHeader, "Document type", "Document type" & strType)
    End If
End With

Und dann klappt es auch:

Die Tatsache, dass Quallen mehr als 500 Millionen Jahre überlebt haben, obwohl sie kein Gehirn haben, gibt vielen Menschen Hoffnung.

Ich weiß nicht genau warum. Eigentlich ist VBA VBA. Aber manchmal passiert es, dass ich ein Programm schreibe, es einem Kunden weitergebe und sämtliche Funktionen der VBA-Bibliothek nicht erkannt werden, also: Left, Right, Len, InStr, …

Die Lösung: ich setze den Bibliotheksnamen VBA davor, also: VBA.Left, VBA.Right, VBA.Len, VBA.InStr, … Dann läuft es.

Gib einem Mann einen Putzlappen und er wird ihn ratlos angucken. Gib ihm einen Hochdruckreiniger und er wird alle reinigen, soweit das Kabel reicht.

Einmal links, einmal rechts – da muss ich jedesmal hinschauen. Kennt ihr das? Ich habe eine Datei erstellt oder geöffnet und modifiziert und möchte die Datei oder die Applikation schließen OHNE zu speichern. Sei es, weil ich etwas ausprobieren wollte, weil ich nur drucken wollte, weil die Änderungen falsch waren, weil Excel volatile Funktionen neu berechnet hat… Es gibt eine Reihe von Gründen. Also: schließen/beenden OHNE ZU SPEICHERN. Wohin klicken? „Nicht speichern“ – rechts:

Eben: „Nicht speichern“ – rechts:

Ups: noch ein Button mehr:

Hier auch:

Oder ich muss genau hinschauen, um zu verstehen, dass „NEIN“ „nicht speichern“ bedeutet:

In PowerQuery muss ich wieder rechts klicken – allerdings: „Verwerfen“:

Und hier: richtig: links klicken! Damit das Hirn wieder funktioniert! Die Aufmerksamkeit auf den Text gelenkt wird! Bloß keine Langeweile oder Gewohnheit aufkommt:

Hatte neulich Stress. Sagte cool: „Fass mich nicht an – ich kann Kibotu“. Muss ja keiner wissen, dass das Kinderbodenturnen heißt.

Hallo Rene, ich mache zurzeit Ihre Ecel Schulung Tipps & Tricks, bis jetzt bin ich begeistert, vielen Dank. Eventuell können Sie mir mit einer Formel helfen? Ich habe zwei Tabellenblätter und möchte Emailadresse, die in Blatt 1 in Spalten aufgelistet sind, zu Blatt 2 einen automatischen Bezu herstellen, sodass dort in einer Zelle die EMailadressen automatisch erscheinen, wenn ich sie in Blatt 1 eingetippt habe. Ich danke bereits für Ihre Hilfe.

Hallo Anna, wenn sich der Cursor auf der Zelle befindet, wo die Email-Adresse stehen soll, genügt ein „=“, dann ein Klick auf das erste Tabellenblatt und ein zweiter Klick auf die Zelle, in der sich die Mailadresse befindet. Achtung: Nicht zurückklicken! Sondern mit [Enter] bestätigen! Dann steht in der Zielzelle beispielsweise =Tabelle1!C3 Hilft das? Oder denke ich zu einfach? schöne Grüße Rene Martin

Lieber Rene,    danke für die supr schnelle Antwort.  Es ist leider doch ein wenig komplizierter, aber ich denk für Sie ebenfalls problemlos zu lösen. Ich füge ein Beispieldokument ein zum besseren Verständnis.  Aus Tabelle1 möchte ich automatische alle Email-adressen von Runde 1 in aufgelistet in ein Zelle im Tabellenblatt ‚Mailverteiler‘ auflisten.  Wie lautet die Formel des Zellbezugs?   Besten Dank für Ihre Hilfe.

Hallo Anna, hast du eine neueres Excel? Und dort die Funktion TEXTVERKETTEN? Damit geht es LG  ::  Rene

Alabasterkörper? Speckstein, Darling.

Amüsant. In Excel mit der englischsprachigen Oberfläche darf man ein Tabellenblatt nicht „History“ nennen. Das ist ein geschütztes Wort.

Bei der deutschen Oberfläche funktioniert das.

In der deutschen Oberfläche ist der Name “ Änderungsverlauf “ geschützt; im Französischen Historique. Danke an die Macher des Global Excel Summit und an Mourad Louha für den Hinweis.

Früher ging ich mit einer DM zum Kiosk und kam mit zwei Heften, drei Kaugummis, einer Tüte Chips und einem Eis zurück. Und heute? Überall Überwachungskameras!

Einfach nicht aufgepasst!

Mein VBA-Programm liefert eine „merkwürdige“ Fehlermeldung. Warum kann ein Tabellenblatt nicht ausgeblendet werden?

Die Ursache ist schnell gefunden – es gibt nur ein Tabellenblatt – und dieses ein darf ich natürlich nicht ausblenden … Also schnell überprüft, wie viele Blätter sichtbar (xlSheetVisible) sind.

Kühlschrank sauber gemacht. Der Käse hielt ein Referat über Vergänglichkeit und hatte die Haare schön.

Hallo Herr Martin,

herzlichen Dank für Ihre Mühe!.

Unabhängig davon möchte ich Ihnen nochmals für die sehr gelungene Onlineschulung am Freitag danken.

Sehr praxisnah und super erklärt! Ich freue ich schon auf PowerBI im September.

Bei dem File gibt es noch ein kleines Problem

Formula.Firewall: Abfrage ‚Tabelle 1‘ verweist auf andere Abfragen oder Schritte und kann daher nicht direkt auf eine Datenquelle zugreifen. Erstellen Sie diese Datenkombination neu.

Ich kann mir dies im Moment nicht im Detail ansehen (Pfad scheint korrekt, Files vorhanden), werde aber am Nachmittag nach Anleitung versuchen, dies „nachzubauen“.

Könnte ein Kompatibilitätsproblem sein (Excel-Version). Bekomme vor öffnen von Power Query diese Meldung:

Kompatibilitätswarnung: Die Abfragen in dieser Arbeitsmappe sind u.U. nicht mit Ihrer aktuellen Version von Excel kompatibel.

Hallo Herr Martin,

Ihre Liste funktioniert doch – es waren meine Sicherheitseinstellungen.

Nochmals vielen lieben Dank!

Brettspiel für eine Person? – Bügeln!

PowerQuery-Schulung. Frage eines Teilnehmers:

Von einer Liste sollen gleiche Werte gruppiert und deren Elemente durch Komma getrennt in einer Zelle zusammengefasst werden. Also, aus

A 1
B 2
B 3
C 4

Soll werden:

A 1
B 2, 3
C 4

Ich habe eine Weile überlegen müssen. Und hier die Lösung:

Schritt 1: Die Tabelle wird importiert. Die erste Spalte wird sortiert, damit die Elemente untereinander stehen. Diese Tabelle wird dupliziert:

Die zweite Tabelle wird gruppiert, so dass die Anzahl der Elemente ermittelt werden kann:

Diese beiden Tabellen werden mit einander verknüpft (Home / Kombinieren / Abfragen zusammenführen / Abfrage als neue Abfrage zusammenführen):

Die Tabelle wird „aufgeklappt“.

Eine Indexspalte, die mit 0 beginnt, wird eingefügt.

Die Funktion List.Range gruppiert die Werte:

List.Range(#“Added Index“[Artikelname],[Index],[#“Artikel (2).Anzahl“])

Zur Erklärung:

  • #“Added Index“[Artikelname] ist die Spalte aus der die Daten gruppiert werden.
  • [Index] – ab dieser Position wird gruppiert
  • ],[#“Artikel (2).Anzahl“] – so viele Elemente werden gruppiert

Steht ein Wert beispielsweise drei Mal in der Liste, können die letzten zwei Werte gelöscht werden. Dies erreicht man mit dem Befehl „Duplikate entfernen“, den Sie in Home / Zeilen verringern / Zeilen entfernen finden.

Das Ergebnis sieht dann wir folgt aus:

Knifflige Aufgabe …

Seitdem sich in der Kneipe nach dem Pinkeln alle die Hände waschen, haben die Erdnüsse auf der Theke gar keinen Geschmack mehr!

Ich habe bereits darüber geschrieben:

Eine Teilnehmerin der Excelschulung fragte heute, wie man mehrere Blätter mit EINEM Klick einblenden könne. Ausblenden sei ja kein Problem:

Aber einblenden?

Ich habe noch einmal überlegt: Start / Zellen / Format / Ausblenden und Einblenden / Blatt einblenden zeigt den gleichen Dialog, mit man Blätter nur einzeln einblenden kann:

Und im VBA-Editor? Auch dort nur einzeln. Vielleicht ein bisschen schneller:

Also doch ein Makro … Aber das wollte sie nicht … Tja …

Mama meinte heute zu mir: „Du bist hier nicht im Hotel!“ Habe erstmal eine schlechte Bewertung auf google geschrieben: „Freches Personal.“

Ich predige es in jeder VBA-Schulung: „sauber programmieren“. Und jetzt bin ich selbst darüber gestolpert: Ein Fehlermeldung an der Stelle

If xlBlattSuch.Range(„B1“) = „“ Then

Klar: das Objekt Range(„B1“) wird verwechselt mit der Eigenschaft Range(„B1“).Value.

Einfach vergessen: bei mir läuft es – beim Kunden gibt es eine Fehlermeldung. *ggrrrrr*

Jeder Bademeister im Ruhestand blickt auf eine chlorreiche Vergangenheit zurück

Gestern in der Excelschulung. Ich zeige, dass man beim Fixieren den Cursor in die Zelle setzt und alle Zeilen über der aktiven Zelle und alle Spalten davor werden fixiert.

Eine Teilnehmerin fragt, ob es möglich sei die Fixierung nun so zu ändern, dass nur noch die Zeilen fixiert sind.

Leider nein: zwei Schritte sind nötig: Fixierung aufheben und dann neu fixieren.

Ich hab mich gefragt, was meine Eltern früher ohne Internet gemacht haben. Auch meine 14 Geschwister konnten mir keine Antwort geben.

Hallo Herr Martin,

Hier mal ein Problem an Sie als Excel-Guru.

Wir haben in unserem Dokumentenlenkungssystem eine Vorlage für Excel mit spezifischen Eigenschaften (siehe Bild mit den teilweise kundenspezifischen Eigenschaften).

Damit in Excel beim ausdrucken die wesentlichen Informationen in Kopf und Fußzeile erscheinen, müssen wir das alles sehr aufwändig händisch in allen Tabellenblättern pflegen. Was natürlich sehr fehlerträchtig ist…

Ich habe mit meinen sehr bescheidenen Kenntnissen mal versucht, irgendwie mit VBA da an die Info ranzukommen, so:

Sub Test()

rw = 1

Worksheets(1).Activate

For Each p In ActiveWorkbook.CustomDocumentProperties

    Cells(rw, 1).Value = p.Name

    Cells(rw, 2).Value = p.Value

    rw = rw + 1

Next

End Sub

Im Ergebnis allerdings ohne Erfolg, da kaum Werte so rauslesbar sind, vor allem nicht die spezifischen. Das wäre auch nur die halbe Miete gewesen, da ja das Einbringen der Info in die Kopf- und Fußzeile nochmal ein separates Problem darstellt, für die ich aktuell keine Idee zur Lösung habe… Kennen Sie vielleicht ein paar VBA-Kniffe, wie ich hier vielleicht weiterkomme?

Hallo Herr F.,

und so geht es:

mit

Dim i As Integer

    On Error Resume Next

    For i = 1 To ThisWorkbook.ContentTypeProperties.Count

        MsgBox ThisWorkbook.ContentTypeProperties(i).Name & „//“ & ThisWorkbook.ContentTypeProperties(i).Value

    Next

ermittle ich die von SharePoint gesetzten Werte und Namen.

Mit

    MsgBox ThisWorkbook.BuiltinDocumentProperties(„Title“).Value, , „Titel“

    MsgBox ThisWorkbook.ContentTypeProperties(„Location“).Value, , „Location“

    MsgBox ThisWorkbook.ContentTypeProperties(„Target group“).Value, , „Target group“

    MsgBox ThisWorkbook.ContentTypeProperties(„Document type“).Value, , „Document type“

greife ich auf die Inhalte zu.

Und: Dies kann in

Private Sub Workbook_BeforePrint(Cancel As Boolean)

eingebunden werden:

ActiveSheet.PageSetup.LeftHeader = …

Was ist los? – Ich mach mir Sorgen um meine Frau! – Was hat sie denn? – Mein Auto!

Hallo Herr Martin, das mit der Autokorrektur funktioniert leider nur dann, wenn sich während des Schreibens nicht automatisch die Sprache ändert.Haben Sie in der Email z.B. englischsprachige Passagen, so kann es passieren, dass das System im Hintergrund auf einmal auf Englisch umstellt.Wenn Sie dann „lg“ eingeben, bleibt auch in der Email „lg“ stehen.Viele Grüße

Danke für den Hinweis, Herr H., das ist richtig: wenn Sie oder Outlook die Sprache umstellen (Übrigens: in Excel, Word & co ist dies anders!), stellt das Programm eine andere Liste der AutoKorrektureinträge zur Verfügung. Und damit „verschwinden“ auch selbst erstellte Einträge, die an die Sprache gebunden sind. schöne Grüße und trotzdem viel Spaß mit Outlook wünscht :::  Rene Martin

Meine Frau und ich haben entschieden, dass wir keine Kinder wollen. Heute beim Abendessen sagen wir es ihnen.

Ein Kurs gehalten. Die Teilnehmer hatten englische Oberfläche; spanische Tastatur. Ich habe bei mir diese beiden Sprachpakete installiert; in EXCEL umgeschaltet – und nun sieht mein Outlook wie folgt aus:

Okay; ich kann damit leben; aber komisch ist es schon …

Ich kann vom Sofa aus vielleicht nicht die Welt retten, aber ich richte zumindest auch keinen großen Schaden an.

Sehr irritiert!

Ich erhalte eine große Anzahl an maschinell erstellten Dateien. Speichere sie in einem Ordner und öffne eine der Dateien aus dem Explorer per Doppelklick:

Eine Fehlermeldung ist die Folge:

Die Datei wird geöffnet, aber jede Zeile wird in der ersten Zelle dargestellt. Getrennt durch Komma – klar CSV.

Ich schaue mir die Datei im Editor an – das ist keine CSV-Datei!

Was ist passiert? Da hat jemand CSV-Dateien mit einem Programm (VBA?) geöffnet und anschließend als Excelmappe gespeichert. Allerdings mit der Endung CSV! Perfide!

Interessante Frage: wie kann ich herausfinden, in welchem Programm die Datei erstellt wurde und was eigentlich „in“ der Datei ist? – Ich weiß es nicht ….

Ich habe einige Punkte von der ToDo-Liste auf die WasSolls-Liste gesetzt.

Amüsant. Während Inquire auch ausgeblendete Blätter anzeigt (sowohl hidden als auch very hidden)

zeigt PowerQuery nut die sichtbaren Blätter an:

Nein! Nicht ganz. Wenn man die Daten nun transformiert und zurück zur Source wechselt, so sieht man auch dort alle Blätter – egal ob sichtbar oder ausgeblendet:

Danke an Dominique Dauphin für diesen wertvollen Hinweis!

Es ist mit egal, wer dein Vater ist. Solange ich hier angle, läuft mir keiner übers Wasser!

Hallo Herr Martin,

Bei meiner täglichen Arbeit ist mir ein sehr gravierender Excel Fehler untergekommen der mich fast an Excel zweifeln lässt.

Ich bin sehr guter Excel Anwender wie VBA Programmierer.

Anbei ein Vorher/Nachher Bild und eine Excel Datei, die den Fehler beschreibt und zeigt.

Könnten Sie diesen Fehler vielleicht an Microsoft melden und in einem Ihrer Videos auf „LinkedIn“ kund tun?

Hallo Herr F.,

Vielen Dank für Ihren Hinweis. Kennen Sie meine Seite excel-nervt.de ? Dort sammle ich Bugs, Ungereimtheiten, merkwürdige Dinge, …

Ich habe das Phänomen mit/ohne Blattnamen bereits 2016 veröffentlicht:

Weitere interessante Dinge rund um Blattnamen finden Sie beispielsweise  auf

Aber kann diesen Bug gerne noch einmal veröffentlichen.

Andererseits – ich bin leider kein MVP und habe auch keinen direkten Kontakt zu Microsoft. Es gibt eine Seite, über die man Fehler melden kann – allerdings bin ich bei der Anmeldung gescheitert …

Hallo Herr Martin,

ich danke Ihnen für Ihre schnelle Antwort.

Nun fürchte ich, am nächsten Wochenende ihre komplette Web-Seite lesen zu müssen.

Mit einem freundlichen Händedruck

*lach*
Sie müssen nicht alles lesen!

Alkoholtest gemacht. Ich vertrage alle gängigen Sorten.

Nächste Woche darf ich Excel in Spanien unterrichten. Ich habe mir die Oberfläche angesehen. Die Übersetzung „bold“ (fett) in „negrita“ finde ich amüsant – nicht gordo oder grasiente, grueso oder espeso.

Und ja – ich weiß: ein Fachbegriff aus der Drucktechnik. María Moliner schreibt: „Se aplica a las letras de imprenta de trazo mucho más grueso que el de las usadas corrientemente en el texto y que destacan notablemente entre éstas.“

Deutsche Schüler bleiben bei whatsapp. Durch ihre Rechtschreibung sind die Nachrichten ausreichend verschlüsselt.

Ärgerlich.

Speichert man in Excel eine Datei im Datenformat CSV, so wird das Semikolan als Trennzeichen verwendet:

Exportiert man die Datei per VBA,

ActiveWorkbook.SaveAs Filename:= Rennfahrer.csv“, FileFormat:=xlCSV

so verwendet Excel das Komma:

Also: Datei öffnen, „ersetzte Komma durch Semikolon“, speichern und schließen. Wenn das mal nicht schiefgeht!

Ich korrigiere mich – genauer: ich werde (zu recht) korrigiert:

Der Schalter Local:=True berücksichtigt das lokal eingestellte Trennzeichen und nutzt somit das Semikolon als Trennzeichen beim Export über VBA.

Ein Treuer Besucher Ihrer Webseite.

Mit freundlichen Grüßen

Sven Schimanski

Dennoch: mein Nörgeln bleibt: Warum zeichnet der Makrorekorder diesen Parameter nicht auf?

Warum „versteht“ Excel die länderspezifische Einstellung (bei uns in der Regel „;“) und nicht das globale „,“?

Man muss so aufpassen …

Danke an Herrn Schimanski für den nützlichen Kommentar.

Mein Name ist Britt. Wie der Kleber. Nur mit „B“? – Wie? Buhu?

Eine Liste mit Überschriften. Die Spalte H hat eine sehr lange Überschft.

Ich erstelle eine 3D-Karte (Einfügen / Touren). Excel kummuliert die Dauer der Sonnenstunden pro Tag.

Ich möchte diese Aggregatfunktion ausschalten und die Einzelwerte darstellen lassen. Allerdings: bei langen Überschriften ist es sehr mühsam mit der Maus das Dropdownfeld zu treffen … Irgendwann schaffe ich es.

1 3 4 5 6 7 12