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 …
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?
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!
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
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.
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: ;;;
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.
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:
In Excel eine Hilfsspalte einfügen, die die Zahlen mit der Funktion TEXT in einen Text umwandelt. Er wird übernommen.
In Word Schalter verwenden, um die Zahlen zu formatieren. Beispielsweise: {MERGEFIELD Geldbetrag \# $####,0.0} oder {MERGEFIELD zahlbar_bis \@ „TT.MM.JJJJ“}
DDE
Diese drei Optionen habe ich in diesem Blog mehrfach beschrieben, beispielsweise in:
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.
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.
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:
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:
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:
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.
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, …
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.
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.
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“.
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.
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!
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!?!
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).
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!
„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.“
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] …
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!
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.
Ist euch das schon aufgefallen? Wenn auf mehreren Tabellenblättern (intelligente, dynamische, strukturierte, formatierte) Tabellen liegen, kann man nicht mehrere Tabellenblätter gleichzeitig kopieren.
Zum einen finden sich dort verwirrende Denglish-Erklärungen. Zum andere erstaunen Aufzählungen. Die trigonometrische Kreisfunktion TAN wird den statistischen Funktionen zugeordnet. Ups!
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!
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:
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.
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:
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 …
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:
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
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
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:
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:
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 .
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:
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:
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!
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 …
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.
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 …
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.
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!
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.
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!“
Heute habe ich mal nichts zu nörgeln. Im Gegenteil – ich habe eine Seite gefunden, auf der Microsoft einige Tipps gibt, um Systemressourcen in Excel zu sparen:
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.
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:
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.
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.
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:
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 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.
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:
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.
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.
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!
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
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.
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.
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 …
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:
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*
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:
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
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.
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.
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:
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:
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).
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
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.
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:
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:
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.
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?
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.
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?
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 …
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“ …
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!
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!
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:
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!
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
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:
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:
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:
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
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.
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:
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
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.
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.
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.
#“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.
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 …
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.
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
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
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 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 ….
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!
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.
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.“
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.
Ich habe eine Tabelle. Ich lege einen Druckbereich fest. Ich möchte, dass Menschen zwar die Tabel drucken dürfen, aber die Daten nicht stehlen, also nicht einfach rauskopieren.
Also wird ein Schutz auf das Tabellenblatt gelegt.
Wir wissen, dass PowerQuery von Dateien Tabellenblattnamen, Namen und intelligente Tabellen anzeigt. Da der Druckbereich als Name bespeichert wird, wird er angezeigt.
Kann geladen werden und nach Excel zurückgeschrieben werden.
Und schon hat man Zugriff auf die Faten. Ohne die Datei zu entzippen, das Protect-Element zu löschen, …
[Strg] + [H]. Ich ersetze „Dawn“ durch „Fairy“. Ich schließe den Dialog.
Nun möchte ich Twix durch Raider ersetzen.
Erneut: [Strg] + [H]. Warum ist der Fokus auf dem Ersetzen-Feld und nicht auf dem Suchen-Feld. Ich muss nach oben klicken oder „springen“, um „Twix“ durch „Raider“ zu ersetzen. Jedesmal. Doof!
Die ersten dunklen Wolken am Horizont der neuen Funktion XVERWEIS.
Wenn die Funktion nicht nur einen Wert aus einer Spalte, sondern aus mehreren Spalten zurückgibt, kann man die Funktion leider nicht mit einem Doppelklick herunterziehen.
Anders als PowerBI kann man mit PowerQuery in Excel leider noch nicht auf PDFs zugreifen. Microsoft hat versprochen, dieses Feature im Frühjahr 2020 einzubauen. Ich bin gespannt.
Bis dahin: Text aus einem PDF kopieren und in Excel einfügen. Ich schaue erstaunt: Wo ist der Text?
Ich editiere die Zelle ([F2]). Der Text erscheint. Allerdings ohne Leerzeichen davor:
Ein Blick in den Dialog Zellen formatieren / Ausrichtung liefert die Antwort: durch das Kopieren wurde ein Einzug mitkopiert:
Also: Einzug raus und schon ist der Text in der Zelle!
Die Ursache: zwei Makros hatten den gleichen Namen. Könnte VBA das nicht etwas deutlicher sagen? „Systemfehler“ und „Unbekannter Fehler“ sind nicht sehr vielsagend …
Gestern in der Outlook-Schulung zeige ich, dass man mit der Tastenkombination [Umschalt] + [Entf] sich den Umweg über den Papierkorb / gelöschte Elemente / Trash sparen kann. Ein Teilnehmer meldet sich und sagt, er habe eine merkwürdig andere Meldung:
Klar – er hat die Tastenkombination [Strg9 + [Entf] gedrückt …
das ist sehr spannend, was da passiert. Ich habe die Ursache gefunden:
Die Überschrift Ihrer Tabelle ist länger als 255 Zeichen.
Sie speichern die Arbeismappe. Sie greifen mit PowerQuery auf diese Datei zu. PQ greift mit der Zeile
= Table.TransformColumnTypes(#“Höher gestufte Header“,{{„ID“, Int64.Type}, {„Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.“, type number}})
darauf zu. Wir schreiben die Tabelle als intelligente Tabelle zurück nach Excel. Tabellen dürfen maximal 255 Zeichen in der Überschrift haben. Excel schneidet die restlichen Zeichen ab.
Soweit klappt de Workflow. Wenn ich allerdings diese Datei schließe und öffne, erhalte ich die Fehlermeldung.
Die Ursache: die Überschrift endet jetzt nicht mehr auf „dolor sit amet“.
Eine weitere Fehlermeldung ist die Folge:
Sehr spannend. Lösung: Mit einer intelligenten Tabelle arbeiten! Dann ist die maximale Anzahl der Buchstaben der Überschrift begrenzt.
Outlook-Schulung. Wir diskutieren über Einträge im Kalender. Die Firmenrichtlinie verlangt: „Bitte verwenden Sie nur „gebucht“ oder „frei“.
Eine Teilnehmerin beschwert sich: „Wenn ein Termin bei mir nicht frei ist, bin ich unbedingt gebucht. Es kann auch andere Grünge haben, wenn ich außer Haus bin. Urlaub, Kur, Dienstreise, Messe, Seminar, …“ Ich gebe ihr recht: einige Begriffe in Outlook sind nicht grlücklich gewählt: „Privat“ heißt nicht unbegingt „privater Termin“, sondern; „ich möchte nciht, dass meine Kollegen sehen, was für einen Termin ich habe (beispielsweise Vorstellugnsgespräch). Den Abwesenheitsassistenten „außer Haus“ zu nennen, wurde ebenso kritisiert wie auch der Begriff „Suchordner“. Besser wäre: „gespeicherte Suche“ oder „Link auf Suchkriterien“.
Ich greife auf eine intelligente (formatierte/dynamische/strukturierte) Tabelle zu. Ich möchte in mehreren Zellen die gleiche Formel stehen haben, die ich danach leicht modifizieren kann. Also kann ich mehrere Zellen markieren und die Formel mit [Strg] beenden. Dann steht in allen Zellen die gleiche Formel, beispielsweise:
=SUMME(Tabelle1[Betrag]/Tabelle1[Prämienpunkte])
Wenn ich allerdings Formeln der Gestalt:
=[@[Quartal 1]]/@HP[[Gesamt]:[Gesamt]]
habe – also: die Spalte „Quartal 1“ wird verschoben, die Spalte „Gesamt“ bleibt fest – dann wüsste ich keine Möglichkeit, dies durch geschickte Tastatureingaben zu erzeugen. Die doppelte Klammer muss getippt werden. Oder? Wer kennt eine Lösung?
Hallo René, ich habe hier ein sehr seltsames Problem unter Windows 10 mit Excel 365 (und nur da).
bei einem User tritt nach einer Weile eine Art „Vollbildmodus“ auf (da fehlen sowas wie die „Menü Punkte„) Es tritt OHNE sein zutun auf (also kein aktives Einstellen von „Auto-hide Ribbon)
(ich
habe diese einzelnen Screenshots übereinander gelegt damit man es
besser sehen kann)
So sollte es eigentlich aussehen:
Hast Du
sowas schon mal gesehen?
Im Web finde ich nichts (auch nicht auf Deinem Blog)
Viele Grüße
Stefan
Hallo Stefan,
Es gibt API-Funktionen, mit denen bekommt man diese Symbole weg. Oder inaktiv.
Heißt: entweder sind Add-Ins installiert oder ein anderes Programm outzt die
Symbole aus Exvel raus.
Wie sieht es in Word aus?
LG :: Rene
Hallo René,
vielen Dank für Deine Info.
Wir haben es jetzt herausgefunden:
-> error appears on PC and notebook!
-> user has development pc and
notebook)
-> but Excel has no unusual Add-ins
-> even in safe-mode (Excel.exe /safe) the
error appears
-> we found a possible cause:
=> VirtuaWin: a desktop switcher tool
(see attachment IM05739548_VirtualWin.png)
=> error is reproducible when switching
desktops with VirtuaWin
=> error only appears in Excel (not in Word
or PowerPoint)
=> I assume: because Excel has a different
„window-handling“
==> we need to investigate if this is the
real cause
ich habe mich nach längerer
Pause mal wieder ans Ribbon Design gewagt.
Leider sagt mir Excel jedes Mal
nach dem Zippen und wieder in .xlsm umbenennen, die Datei sei beschädigt. Das
passiert auch wenn ich keine Änderungen am entzippten Ordner vornehme (sowohl
am Arbeitsrechner als auch am privaten Rechner)
Haben Sie vielleicht nochmal
einen Tipp? Ich scheine irgendwas falsch zu machen…
Liebe Grüße und vielen Dank
NF.
Hallo Herr Fritz,
mit Sicherheit
haben Sie einen Fehler in der XML-Ribbon-Datei. Verwenden Sie einen guten
XML-Editor? Er muss validierend sein.
Ich verwenden
Visual Studio – gibt es auch als kostenlose Version. Dort ist die Schema-Datei
für das MSO integriert.
Outlook-Schulung. Vieles fehlt in diesem – eigentlich – sehr guten Mailprogramm. Beispielsweise ist es nicht möglich die Arbeitsstunden für jeden Tag unterschiedlich anzulegen. Also beispielsweise Mo: 08.00 – 14:00 Uhr :: Di: 08:00 – 18:00 Uhr :: Mi: 14:00 – 20:00 Uhr …
Schade!
Wir haben es so gelöst, dass jeder seinen frühesten Arbeitsbeginn einträgt und sein spätestes Ende. Und die Zeiten, die er nicht arbeitet durch einen Serientermin „abwesend“ kennzeichnet. So kann jeder sehen, wer wann im Büro ist.
Amüsant. Ist Ihnen das schon aufgefallen? Wenn ich in einer intelligenten (dynamischen/formatierten/strukturierten) Tabelle eine Überschrift lösche, wird sie – je nach Spracheinstellung – durch eine andere (beispielsweise „Spalte1“) ersetzt:
Wenn Sie allerdings eine Überschrift eingeben, die länger ist als 255 Zeichen, wird dieser Text gelöscht. DFie maximale Anzahl der Zeichen einer Überschrift beträgt 255 Zeichen.
Das hat Auswirkungen auf PowerQuery, der Daten als intelligente Tabelle zurückgibt. Ist eine Überschrift länger, wird der restliche Text abgeschnitten. Werden gleiche Überschriften importiert, werden sie durchnummeriert.
Dass hiner AutoSum die Funktion SUM steckt, verstanden die Teilnehmer. Aber warum erzeugt ein Klick auf die Schaltfläche „Count Numbers“ die Funktion COUNT?
Excelschulung. Wir diskutieren über den Unterschied zwischen Zellen formatieren (Nachkommastellen „wegformatieren“) und der Funktion RUNDEN. Ein Teilnehmer beschwert sich, dass dann die Summe der gerundeten Werte möglicherweise nicht mehr mit der urprünglichen Summe übereinstimmt. Ich zeige ihm ein Diagramm:
Manchmal ist es irritierend. Aufgabe in der Excelschulung: Erhöhen Sie den Jahresbeitrag der Blue-Mitgleider um 5 Euro, der anderen Mitglieder um 10 Euro. Ein Teilnehmer arbeitet mit einer Hilfsspalte:
=WENN(J2=“Blue“;5;10)
Ich sage, dass dieses Vorgehen völlig okay sei, dass er aber auch direkt in der WENN-Funktion rechnen könne. Ich korrigiere und klicke auf die Zelle J2:
=WENN(J2=“Blue“;H25;10)
Der Teilnehmer schaut mich irritiert an. Ich füge ein Pluszeichen ein – und schon wird klar, wie gerechnet wurde:
Der zweite Teil muss natürlich noch eingefügt werden:
Excelschulung. Wir üben Tabellen: sortieren, filtern und Pivottabellen. Wir erstellen die erste Pivottabelle. Wir gruppieren die Verkäufer. Ein Teilnehmer meldet sich und sagt, dass bei ihm keine Verkäufer angezeigt werden. Ich schaue mir seine Pivottabelle an:
Ich habe zwei Mal hinschauen müssen, dann habe ich entdeckt, dass in der Tabelle noch ein Filter eingeschaltet war. Dadurch sind die ersten Zeilen ausgeblendet und dadurch werden auch nicht Daten angezeigt. Perfide!
Eigentlich klar, logisch, verständlich, konsequent und einleuchtend – dennoch: auf den ersten Blick erstaunt es: Warum kann man in einer intelligenten (strukturierten, formatierten, dynamischen) Tabelle kein Teilergebnis erstellen?
Mourad Louha hat auf seiner Seite https://de.excel-translator.de/ ein mächtiges Werkezug geschaffen, das Begriffe, die in Excel verwendet werden, in anderen Sprachen auflistet. Er hat auch auf dem Excelstammtisch Hessen im Januar 2020 gezeigt, welche abstrusen Übersetzungen aus dem Hause Microsoft kommen.
So etwas wünsche ich mir für Word. Eigentlich auch für PowerPoint, Outlook und alle anderen Programme.
Ich unterrichte zur Zeit mit englischsprachiger Oberfläche. In der Mittagspause öffne ich ein Dokument und bin über die Kopfzeile erstaunt:
Mit [Alt] + [F9] kann man die Feldfunktionen einsehen. Richtig: die Formatvorlage Überschriftxx wird übersetzt zu Headingxx. Jedoch nicht in der Feldfunktion. Ärgerlich!
Amüsant. Ich habe eine Liste von deutschen Städten – sortiert nach Größe. Ich wandle sie in Excel über Daten / Geografie in Geodaten um:
Anschießend lasse ich mir den Leader(s) anzeigen. (Geht auch mit =B3.Leader(s). )Klappt prima – nur Berlin hat keinen. Oder wird für den (Ober)bürgermeister nicht erkannt. Ebenso wie Leipzig. Aber auch Münster, Karlsruhe, Magdeburg, Saarbrücken und Heidelberg …
Randbemerkung: Geografie oder Geographie? – Microsoft konnte sich wohl nicht so recht entscheiden …
In Excelschulungen erzähle ich immer, wenn ich den Assistenten „Daten / Text in Spalten“ vorstelle, dass es in Excel keine Tabulatoren gibt – man kann die Grundeinstellung (die beim Import von Textdateien verwendet wird) ruhig stehenlassen:
Ich werde eines Besseren belehrt: Wenn Sie ein Worddokument oder einen Mailtext aus Outlook nach Excel kopieren, werden die Tabstopps durch Spalten getrennt:
Ein Worddokument mit Tabulatoren… in Excel
Wenn Sie dagegen Texte IN Zellen kopieren (das heißt: die Zelle mit [F2] editieren) und dann den kopierten Text einfügen, stehen Tabstopps in Zellen. Merkwürdigerweise sieht man sie nicht, wenn der Cursor AUF der Zelle steht – lediglich IN der Zelle werden sie angezeigt:
Der Assistent „Daten / Text in Spalten“ interpretiert die Tabstopps als Leerzeichen!?!
Daten / Text in Spalten mit Tabstopps Daten / Text in Spalten mit Leerzeichen
Die Funktion CODE liefert den Wert 32 – den gleichen wie Leerzeichen!?!
Wenn man in den Ersetzen-Dialog einen Tabstopp hineinkopiert und durch ein Leerzeichen ersetzen lässt, funktioniert dies hervorragend.
Fazit: Finger weg von Tabstopps in Exceltabellen! Excel behandelt diese Zeichen nicht konsequent als eigene Zeichen – eine Unterscheidung durch Leerzeichen ist nicht an allen Stellen durchgeführt. Und wenn ein Anwender Texte in die Zellen eingefügt hat – dann bleibt nur noch der Ersetzen-Assistent oder die WECHSELN-Funktion.
ich habe auf einem Recht neuen Mac ein aufwändiges xls Dokument erstellt und habe auch häufig die Dropdown Funktion verwendet. Bei mir funktioniert diese Funktion in jedem Tabellenblatt. Jetzt muss mein Chef mit einem Microsoft Computer diese xls auch regelmäßig benutzen. Alle Funktionen sind in seinem xls zu sehen, aber alle Dropdown Funktionen sind bei ihm alle nicht sichtbar. Woran kann es liegen? Mac und Microsoft sind ja an sich kompatibel. Liegt es an seiner alten Version (2007)?
Vielen lieben Dank,
Anne
Kennst jemand von euch die Antwort? Ich bin leider überfragt …
ich habe ein Tool gebaut wo ich im Namensmanager auf die
Funktion Bereich.Verschieben nutze, um das Diagramm dynamisch zu gestallten.
Nun möchte Ich die Mappe vor neugierigen Blicken
schützen. Über Blatt- und Arbeitsmappeschützen klappt das auch ausreichend,
allerdings ist der Namensmanager komplett einsehbar.
Haben Sie eine Idee, wir ich den Namensmanager verbergen
kann?
Ich freue mich von Ihnen zu hören.
Viele Grüße,
Hallo Herr W.,
das Ausblenden funktioniert. Leider nicht das Symbol,
aber die Gruppe „Definierte Namen“. Haben Sie die Excel-Datei schon
einmal entzippt und nachgeschaut?
In der Datei „.rels“ im Ordner _rels muss ein
Verweis auf die Datei stehen:
In der Datei ribbon.xml wird die Gruppe ausgeblendet:
<ribbon startFromScratch=“false“>
<tabs>
<tab
idMso=“TabFormulas“>
<group
idMso=“GroupNamedCells“ visible=“false“>
</group>
</tab>
</tabs>
</ribbon>
Kommen Sie damit klar?
Schöne Grüße
Rene Martin
PS: Der Anwender kann den Namensmanager immer noch über
[Strg] + [F3] öffnen. Das könnte man mit VBA wegprogrammieren. Dann könnte er
immer noch ein Symbol in die Symbolleiste für den Schnellzugriff legen …
Ich habe eine Excelliste, in der trage ich Informationen zu meinen Schulungen ein. Ich habe eine Spalte „Stunden außerhalb“, in der ich bislang Texte eingetragen habe wie „2 x 24“ oder „3 x 10“. Nun hätte ich gerne die Summe der Tage ermittelt, also die Zahlen, die vor dem „x“ stehen summiert. Nichts leichter als das:
=LINKS(I351;SUCHEN(„x“;I351)-2)
liefert die Zahlen. Allerdings: steht kein Text in der Zelle, so liefert SUCHEN(„x“;I351) einen Fehler. Der kann bequem mit WENNFEHLER abgefangen werden:
=WENNFEHLER(LINKS(I351;SUCHEN(„x“;I351)-2);““)
Das Ergebnis:
Darauf setzte ich eine Pivottabelle auf und ändere den Vorschlag „ANZAHL“ in „SUMME“:
Eine Fehlermeldung ist die Folge. Vielleicht hängt es mit dem „“ der Funktion WENNFEHLER zusammen? Ich ändere die Formel in:
=WENNFEHLER(LINKS(I351;SUCHEN(„x“;I351)-2);0)
Die leeren Zellen werden mit einer „0“ aufgefüllt. Sieht nicht schön aus. Also ändere ich das Zahlenformat in ein benutzerdefiniertes:
0;-0;;
Und wundere mich erneut. Alles ist weg!
Langsam dämmert es mir: klar – die Funktion LINKS liefert einen Text. Das heißt: der Text „2“ wird durch das benutzerdefinierte Zahlenformat weggeblendet. Und: Excel erkennt keine Zahlen für die Pivottabelle, die summiert werden könnten. Also noch einmal die Formel anpassen. Der Text muss in eine Zahl konvertiert werden: mit WERT, mit „–“ oder mit „*1“
Gestern in der Outlook-Schulung hat ein Teilnehmer gefragt, warum Outlook (Kontakte) nicht mehr als Excelmappe speichern kann. Die Antwort – ich weiß nicht, warum diese Export-Option entfernt wurde. Zwar kann man in eine CSV-Datei speichern:
Das Öffnen durch Excel funktioniert nicht richtig
weil die Daten durch Kommata getrennt wurden. Benennt man die Datei mit der Endung TXT und öffnet sie nun Excel, wo mal das Komma als Trennzeichen wählt, dann klappt es:
Jedoch: schon einige wenige Tests zeige, dass DIES nicht der Weisheit letzter Schluss ist … Wenn ich Kontakte von einem Rechner zu einem anderen exportieren möchte, so verschicke ich sie per Mail.
Ein Dankeschön an Mourad Louha für seinen Vortrag beim Excelstammtisch Hessen zum Thema Internationalisierung bei Excel und worauf geachtet werden muss, wenn Dateien von einer Sprachregion in eine andere geschickt werden.
Amüsiert habe ich mich über seine Forlie „Kuriositäten“, in welcher er amüsante Dinge bei der Übersetzung einiger Funktionen zeigte: die längste Excelformel (AVRUND.GJELDENDE.MULTIPLUM.OPP.MATEMATISK im Norwegischen), SE.NON.DISP., die einen Punkt am Ende hat, CURRENCY – die Übersetzung von DOLLAR im Griechischen …
Ein Dankeschön an Mourad Louha, der mir seine Präsentzation zur Verfügung gestellt hat.
Heute in der Excelschulung. Ich zeige die Datenüberprüfung. Eine Artikelliste. In die Mengenspalte darf nur eine ganze Zahl eingetragen werden. Ein Teilnehmer fragt, ob man die Eingabe auch so begrenzen kann, dass die Gesamtmenge < 100 sein muss. Klar – kein Problem: Benutzerdefiniert – =SUMME(D:D)<100
Klappt.
Und dann möchte der Teilnehmer, dass die Eingabe nur ganze Zahlen akzeptiert. Leider kann man keine zwei Datenüberprüfungen miteinander verketten.
Man müsste die Formel erweitern, beispielsweise so:
Danke an die Einladung zum Excelstammtisch in Hessen. Auch in Frankfurt – wie bei uns in München – eine geballte Ladung an Wissen, Freude über Excel, Staunen und Spaß.
Klasse war es.
Danke auch an Andreas Thehos, der sich mit dem gleichen Problem rumgeschlagen hat wie ich gestern. Nur: die Aufgabenstellung war eine andere.
Gegeben sei eine Namensliste. Sie ist Basis für eine Pivottabelle. Es erstaunt, dass ein Name zwei Mal auftaucht. Und nein: es sind keine Leerzeichen hinter dem Namen.
Die Ursache: auch hier hat sich ein geschütztes Leerzeichen (ein non-breaking space) mit dem CODE 160 zwischen den Vornamen und Nachnamen geschummelt. Wie passiert so etwas? Entweder wurden die Daten aus einer Internetseite entnommen – oder von einem Word-Dokument. DORT kann man mit der Tastenkombination [Umschalt] + [Strg] + [Leertaste].
Erstaunlich. Ich kopiere eine Liste von einer Internetseite. Und möchte die Informationen einer Spalte trennen. Ich verwende den Assistenten Daten / Text in Spalten und bin verblüfft, dass die Texte nicht (am Leerzeichen) getrennt werden:
Eine Analyse mit der Funktion =CODE(TEIL(A2;LÄNGE(„Argentinien“)+1;1)) liefert das Ergebnis, dass es sich nicht um ein Leerzeichen (32), sondern um ein geschütztes Leerzeichen (160) handelt. Es entspricht dem (non-breaking space). Zum Glück kann man es aus dem Text kopieren und daran trennen:
Im ersten Moment erstaunlich; allerdings konsequent, korrekt und nützlich: sind mehrere Zellen miteinander verbunden, liefert die Funktion SEQUENZ die Fehlermeldung #ÜBERLAUF – das heißt: die Werte werden nciht über die verbundenen Zellen geschrieben.
Ich kopiere eine Liste aus dem Internet nach Excel. Erstaunt stelle ich fest, dass ich in der Zelle einen Bindestrich sehe – in der Bearbeitungsleiste jedoch nicht:
Die Funktion =CODE(TEIL(B1;6;1)) liefert Aufschluss: es handelt sich um den ASCII-Code 173 – das entspricht dem HTML-Zeichen oder: ein weiches Trennzeichen, das in Excel allerdings seine Funktion verliert.
Gewundert habe ich mich schon: ich erstelle eine Formel mit einem Bezug auf eine (intelligente/formatierte/dynamische) Tabelle:
=XVERWEIS($F$2;tbl_Staaten[Staat];tbl_Staaten[Jahr der Unabhängigkeit];;;1)
Mein Erstaunen ist groß als ich die Formel nach rechts ziehe:
=XVERWEIS($F$2;tbl_Staaten[Jahr der Unabhängigkeit];tbl_Staaten[Staat];;;1)
Der absolute Bezug $F$2 bleibt. Die konstante Zahl 1 bleibt. Aber die beiden Spalten werden vertauscht. Klar – ein Bezug auf eine Spalte einer Tabelle ist immer relativ. Da die Formel beim nach Rechts-Ziehen nicht „weiterwandern“ kann, beginnen die Bezüge von vorne. Und wie macht man einen absoluten Bezug innerhalb einer Tabelle? Da war doch mal was?!
Richtig: Andreas Thehos hat es einmal gezeigt. Man muss die Formel folgendermaßen schreiben (mit doppelten eckigen Klammern).
Gibt es eine Obergrenze für die Funktion SEQUENZ? Kann ich damit ein Tabellenblatt vollschreiben? Die Antworten: Obergrenze – ja; alle Zellen füllen – nein!
Ich verstehe es nicht: In der Zelle G1 steht die Funktion ZUFALLSBEREICH(1;5) und liefert folglich eine ganze Zahl zwischen einschließlich 1 und 5. Die Funktion SEQUENZ in Zelle 1 baut so viele Zeilen (1 bis 5) und zwei Spalten auf.
Bei einigen Zahlenwerten der Funktion ZUFALLSBEREICH kommt es zu einer Fehlermeldung: ÜBERLAUF:
Auch das Editieren mit [F9] liefert nicht die Lösung:
Oder doch? Ein Dankeschön an Jürgen Diedmann, der mir folgenden Artikel zum Thema Speichern und Abstürze zugeschickt hat. Wichtig für alle! Damit (nicht nur) Excel nicht (mehr so sehr) nervt.
Speicher und Sicherheitsfunktionen nach Absturz o.ä.
Grundsätzliches: In den Optionen sollten eingestellt sein:
Kategorie Speichern / Auto-Wiederherstellen-Informationen speichern alle 1 Minute Dateispeicherort für AutoWiederherstellen: So wie abgebildet, Ort niemals ändern, WICHTIG
Einstellungen mit OK bestätigen
Grundsätzliche Unterscheidung zwischen
Nicht gespeicherte Arbeitsmappe
Bereits gespeicherte Dateien
Nicht gespeicherte Arbeitsmappe
Datei wurde noch nicht unter einem Namen gespeichert bzw. abgelegt. Datei wird von Excel automatisch im Speicherpfad, hier (Beispiel) C:\Users\Juerg\Appdata\Local\Microsoft\Office\UnsavedFiles abgelegt.
Wiederherstellung nach Systemabsturz, Stromausfall o.ä.
Nicht gespeicherte Arbeitsmappe
Dateiname wurde noch nicht vergeben und man ist auf normalen Wegen aus Excel ausgestiegen, wie zum Beispiel rot unterlegtes Kreuz rechts oben geklickt,
Ihre Änderung an dieser Datei speichern?……Nicht speichern Egal wann diese Datei wiederhergestellt werden soll, sie wurde auf der Festplatte abgespeichert. Wichtig ist nur, dass die Datei mind. 1 Minute, (Einstellung Optionen) geöffnet war.
Wiederherstellung:
Excel öffnen…
Weitere Arbeitsmappen rechts unten anklicken, es erscheint…
Nicht gespeicherte Arbeitsmappen wiederherstellen anklicken.
Es erscheint…
Hier sind nun alle Dateien abgelegt, welche automatisch unter dem in den Optionen aufgeführten Speicherort abgespeichert wurden. Datei anklicken und alles wird gut. Daher der Hinweis, den Pfad in den Optionen nie ändern.
Die gewünschte Datei wird so dann wiederhergestellt mit folgenden Hinweisen:
Wiederhergestellte Datei… sofort Speichern unter…
Gespeicherte Arbeitsmappe
Eine beliebige Arbeitsmappe wurde erstellt und abgespeichert, welche nach einer Minute „zusammenbricht“. Wir provozieren dieses einmal mit dem Task-Manager. Str+Alt+Entf drücken, Task-Manager, Excel anklicken, Task beenden drücken und den Manager wieder verlassen. Excel ist und „unsanft“ beendet worden.
Nun wird Excel wieder gestartet… Im Startbildschirm erscheint im unteren Bereich…
Nach dem Klick in die Fläche kommt dann der eigentliche Bildschirm mit den Wiederherstellungsoptionen
Ein Klick in die gewünschte Rubrik Arbeitsmappe und die Datei ist wieder auf dem Schirm. Es geht lediglich die Arbeit 1 Minute verloren
Mit den drei Funktionen BEREICH.VERSCHIEBEN, INDIREKT und XVERWEIS kann man einen dynamischen bereich aufspannen. Diese drei Funktionen kann man als Namen speichern (ich habe sie mal Jahr1, Jahr2 und Jahr3 genannt).
Die Namen mit den Funktionen BEREICH.VERSCHIEBEN und XVERWEIS kann man wunderbar in einem Diagramm verwenden:
Schade eigentlich. Ab und zu benötige ich die benutzerdefinierte Formatierung der Form
[Rot][<-2]0;[Blau][>5]0;Standard
Es gibt Stellen in Excel, in denen nicht mit der bedingten Formatierung gearbeitet werden kann – beispielsweise in Diagrammen. Allerdings: man kann leider nur maximal zwei Farben verwenden plus die Standardfarbe. Schade!
Die Zeilennummerierung wurde eine Zeile zu hoch angesetzt – Zeile 1 darf nicht die Zeile neben den Köpfen sein, sondern muss eine Zeile tiefer beginnen. Dann würde es stimmen!
Liebe Microsoftis: die neue Funktion EINDEUTIG ist – ebenso wie die anderen fünf neuen ARRAY-Funktionen klasse! Wirklich, ehrlich: super-spitzen Klasse! Brauchbar ohne Ende! Aber, bitte, bitte: übersetzt die Parameter ins Deutsche. Wie bei den anderen fünf Funktionen!
Ich habe zwei Mal hinschauen müssen, bis ich den Guten Rutsch gesehen habe. Beziehungsweise verstanden habe, warum der zweite Teil des Textes nicht angezeigt wird. Dann habe ich geschmunzelt.
Man sollte einen Wettbewerb ausrufen. Wer hat Lust mitzumachen? Die schönsten Excel-Weihnachtsbäume. Ich fange man an:
Weihnachtsbaum I. Mit der Funktion WIEDERHOLEN
Oder mit einem Punkte-Diagramm (XY-Diagramm):
Oder mit der Bedingten Formatierung. Damit kann man grüne Kästchen erzeugen (mit den Funktionen ZEILE() und SPALTE(), aber auch die Ampeln als Christbaumkugeln verwenden. Eine Funktion ZUFALLSZAHL() oder ZUFALLSBEREICH hilft:
Und schließlich mit einem Liniendiagramm dessen Flächen ausgefüllt sind:
Boah – muss ich mich wieder ärgern! Ich schaue mir gerade die beiden neuen Funktionen XVERWEIS und XVERGLEICH an (wirklich klasse!) und werfe einen Blick auf die Hilfeseite von Microsoft:
Das Beispiel 1 ist völlig falsch! Es wird keine Platzhaltersuche (4) verwendet, sondern eine exakte Übereinstimmung oder das nächst größere Element. Deshalb liefert 1 das Ergebnis 2! Der Parameterwert 4 würde #NV liefern, weil Gra? nicht vorhanden ist. Nur Gra?? oder Gra*. Boah! Das Boah geht weiter: Beispiel 2: Der Satz „Beachten Sie, dass diese Methode erfordert, dass Ihre Daten in absteigender Reihenfolge sortiert sind.“ Nein – das erfordert sie nicht – es wird der Wert darüber ODER darunter zurückgegeben. Beispiel 3 ist korrekt; bei Beispiel 4 hätte ich mir eine vollständige Übersetzung gewünscht: =XVERGLEICH(4;{5;4;3;2;1}) Nun ja!
Da habe ich eine Anfrage von Herrn Diedmann erhalten, ob er etwas auf meinem Blog veröffentlichen kann. Na klar kann er – nervige Sache mit einer hervorragenden Lösung. Es geht darum in einer Pivottabelle nur die Nullwerte mit den entsprechenden Daten herauszufiltern. Lesen Sie selbst:
Sehr geehrter Martin,
Hier die Geschichte, die den Stein ins Rollen brachte.
Durch ein Lernstudio habe ich vor Ort bei einer
Getränkefirma Excel Unterricht vor Ort gegeben.
Es waren mit verschiedenen Office Versionen gearbeitet, von
2010 bis 2019
Bei Pivot war die Grundlage eine Tabelle von YouTube vom
Andreas Thehos.
Es sind Automobilverkäufer, die verschiedene Modell anbieten. Einige der Verkäufer haben in einem Zeitraum aber nicht bestimmte Modelle verkauft.
Lösung für Herrn N.….. Also.. Pivot Tabelle erstellen aus den Daten der BMW-Verkäufern
Pivot Tools… Entwurfsansicht… Berichtslayout… in Tabellenformat…
Es erscheint…
Weiter… so wie angezeigt. Modell anklicken, rechte Maustaste, Feldeinstellungen, Elemente ohne Daten auswählen und OK
Wie unten, ABEL Ergebnis anklicken, rechte Maustaste, Teilergebnisse keine und OK…
Die Nullwerte auszufiltern war und ist ja auch kein Problem.
Nun kam die Frage, Kann ich alle Verkäufer mit Nullwerte untereinander
ausfiltern?
Das Feld „Summe vom Endpreis“ zeigte keine
Filtermöglichkeit.
Aber, die Office Version 2010 hatte diese Filtermöglichkeit.
Das war die Herausforderung. Eine Lösung ohne VBA, denn das
können sie den Wenigsten vermitteln.
Die Lösung war letzthin und endlich, dass ich aus lauter
Verzweiflung einfach den Spaltenname über die projizierte Überschrift
geschrieben habe und schwupps…. Die Spalte ließ sich filtern.
Und….. Ratatataaaaaaa…..
Wenn jetzt noch Leere Daten als Null anzeige gesetzt wird…
Evtl. ist das das erste Thema, welches ich bei ihnen veröffentlichen kann.
Ansonsten zunächst frohe Fest und guten Rutsch ins neue
Jahr.
Die Aufgabe ist einfach. Zu einem Text (einem Buchstaben) sollen Kreissymbole dargestellt werden. Das kann man prima mit der Bedingten Formatierung erledigen. Allerdings: sie akzeptiert keine Texte. Also muss man den Text in eine Zahl umwandeln – beispielsweise mit der Funktion CODE (oder UNICODE). Darauf kann man eine Bedingte Formatierung aufsetzen.
Auch dieses Problem hat mich eine Stunde Zeit gekostet.
Ich erstelle ein umfangreiches Programm für einen Kunden. Die Registerkarten sind ausgeblendet:
Ich starte das Programm mit dem Ausschalten der Bildschirmaktualisierung:
Application.ScreenUpdating = False
Ich blende die Registerkarten per VBA wieder ein:
ActiveWindow.DisplayWorkbookTabs = True
Was passiert? Nichts!
Man muss vor dem Anzeigen die Bildschirmaktualisierung wieder einschalten! ( Application.ScreenUpdating = True). Dann erst werden die Tabs wieder angezeigt:
Übrigens: Es ist erstaunlich, dass die Eigenschaft „DisplayWorkbookTabs“ eine Eigenschaft von ActiveWindow und nicht von ActiveWorkbook ist!
Boah – ist das mies! Zwei Stunden lang habe ich gesucht. Und dann gefunden.
Ich habe eine Datei mit zwei Tabellenblättern. Eines enthält eine Datenliste, ein zweites eine Datenüberprüfung mit einer Liste, die diese Daten aus dem anderen Blatt holt:
Per VBA ziehe ich nun diese beiden Blätter (einzeln!) in eine Masterdatei (man kann es auch per Hand machen. Die Verknüpfung verweist nun auf die alte Datei:
Der Code:
Dim xlFremdeDatei As Workbook
Dim xlEigeneDatei As Workbook
Dim xlFremdesBlattDaten As Worksheet
Dim xlFremdesBlattDatenüberprüfung As Worksheet
Set xlEigeneDatei = ThisWorkbook
Set xlFremdeDatei = Application.Workbooks.Open("D:\Eigene Dateien\Excel\Beispieltabellen\3Musketiere.xlsx")
xlFremdeDatei.Worksheets(2).Copy Before:=xlEigeneDatei.Worksheets(1)
Set xlFremdesBlattDatenüberprüfung = xlEigeneDatei.Worksheets(1)
xlFremdeDatei.Worksheets(1).Copy Before:=xlEigeneDatei.Worksheets(1)
Set xlFremdesBlattDaten = xlEigeneDatei.Worksheets(1)
xlFremdeDatei.Close SaveChanges:=False
xlEigeneDatei.Save
Beide Dateien werden geschlossen, die Masterdatei wird geöffnet. Unter Datei / Informationen wird angezeigt, dass sich in dieser Datei eine Verknüpfung (auf eine andere Datei) befindet, die man hier nicht löschen kann. Klar!
Nun setze ich in der Zelle mit der Datenüberprüfung per Hand oder per VBA die Verknüpfung auf die eigene Datei:
Excel zeigt noch immer (unter Datei / Informationen) an, dass sich in der Datei eine Verknüpfung befindet. Diesen Eintrag kann ich nicht löschen! Erst durch das Schließen und wieder Öffnen der Datei ist er verschwunden.
Das Erstaunliche: werden die Tabellenblätter gelöscht, wird die Verknüpfung nicht angezeigt. Werden die Verknüpfungen „nur“ behoben, bleibt der Eintrag noch in den Informationen stehen.
Zwei Stunden habe ich benötigt, um das herauszufinden. Mies!
Heute in der PowerQuery-Schulung kam die Frage, ob man ab einer bestimmten Spalten alle anderen Spalten bis zum Ende der Tabelle löschen könne:
Schöne Frage. Geht aber nicht mit den Hausmittel. Ein paar Zeilen Code M wären nötig.
Ich habe vorgeschlagen von der ersten bis zu der Spalte mit der [Umschalttaste] zu markieren und anschließend „Andere Spalten entfernen“. Ist ein Klick mehr. Geht aber auch …
Excelschulung heute. Ich zeige, wie man eine Zeile einfügen kann: [Strg] + [+] oder über das Kontextmenü der Zeilenköpfe. Ein Teilnehmer meldet sich und sagt, dass es bei ihm nicht funktioniert: es werden keine Zeilen eingefügt.
Ich schaue auf seinen Bildschirm und lache. Er hat schnell verstanden, warum ich lache.
Habt ihr schon einmal Ribbon selbst mit einer XML-Datei erstellt. Ein validierender XML-Editor ist wichtig (wer Visual Studio hat, ist gut beraten).
Man fragt sich, welcher Praktikant den Befehl checkBox und nicht Checkbox (auch nicht CheckBox) genannt hat. Buttons habe das Attribut size mit den Werten „large“ und „normal“. Hum!
manchmal freue ich mich auch über Excel. Kennt ihr das? Probleme, die nicht lösbar scheinen, finden doch eine Lösung.
Kennt ihr die neuen Array-Funktionen in Excel 365? Beispielsweise ZUFALLSMATRIX:
=ZUFALLSMATRIX(10;1;1;10;WAHR)
generiert zehn zufällige ganze Zahlen zwischen einschließlich 1 und 10. Okay.
=SUMME(ZUFALLSMATRIX(10;1;1;10;WAHR))
summiert zehn zufällige Zahlen und liefert ein Ergebnis zwischen 10 und 100. Okay.
Vor einer Weile wollte ein Kunde aus einer Liste von zirka 100.000
Werten 100 Werte zufällig herausgreifen und von diesen den Durchschnitt
berechnen. Mit einer Hilfsspalte ist das kein Problem. Jedoch scheinen
die Matrixformeln zu versagen, weil {…ZUFALLSBEREICH …} 100 Mal die
gleiche Zufallszahl liefert und nicht 100 verschiedene. Die Lösung für
dieses Problem liefert ZUFALLSMATRIX:
berechnet einen Durchschnitt für diese 100 zufällig gefundenen Werte.
[F9] zum Neuberechnen liefert einen anderen Wert. Markiert man einen
Teil der Formel, dann zeigt [F9], dass tatsächlich zufällige Werte
ermittelt wurden. Die Zahl 100 kann ausgelagert und erhöht werden. Je
mehr man sich 100000 nähert, umso mehr nähert sich der
Zufalls-Mittelwert dem echten Mittelwert.
Und wer sich nun fragt:
„wer braucht denn so etwas?“ – Das Teilchen heißt
Monte-Carlo-Simulation und wird in Mathematik, Physik, Finanzwesen, …
seit über 60 Jahren angewandt. Weite Infos – beispielsweise Wikipedia.
Und ich bin begeistert – Excel rechnet so wie ich will!