Posts

Es werden Posts vom Juli, 2015 angezeigt.

letzten Wert einer Zeile ermitteln, INDEX(), VERWEIS()

Bild
Um den letzten Wert einer Zeile (im folgenden Beispiel Zeilenindex 1) zu ermitteln, kann man folgende Excel Funktion(en) verwenden: =(INDEX(Tabelle1!1:1;VERWEIS(2;1/Tabelle1!1:1;SPALTE(Tabelle1!1:1)))) Um die Aufgabe mit einer VBA Funktion zu lösen siehe Blogbeitrag letzten Wert einer Zeile ermitteln letzten Wert einer Spalte ermitteln BEREICH.VERSCHIEBEN()

schema.ini Datenquelle Text, Power Pivot

Problem: Wenn in einer zu importierenden Spalte Nummern (Datentyp Zahl, zB 2000) und alphanumerische Nummer (zB 2000-00-0) stehen, ermittelt Excel autoamtisch den Datentyp an den ersten Inhalten. Wenn diese Nummern sind wird der Datentyp Zahl festgelegt, alpanumerische Nummern werden nicht korrekt importiert. Lösung: schema.ini (muß sich im gleichen Ordner befinden wie die zu importierende Text-Datei) sample.txt durch Dateiname der zu importierenden Text-Datei ändern. [sample.txt] ColNameHeader=False MaxScanRows=0 Format=Delimited(|) DateTimeFormat="MM/DD/YYYY" DecimalSymbol="." CurrencyDecimalSymbol="." alternativ kann der Datentyp je Quellspalte definiert werden (Beispieldatei mit 18 Spalten): [sample.txt] ColNameHeader=False Format=Delimited(|) DecimalSymbol="." Col1=Bestellnummer Text Width 10 Col2=Position Text Width 30 Col3=Lieferant Text Width 10 Col4=Artikelgruppe Text Width 30 Col5=Artikelnummer Tex

leere Zellen mit Vorgängerwert füllen

Bild
Um leere Zellen mit Vorgängerwerten zu füllen, folgendermaßen vorgehen: Spalte markieren F5 drücken Gehe zu -> Inhalte -> Leerzellen markieren Bezug auf die Zelle über der ersten leeren Zelle herstellen mit STRG-RETURN abschließen VBA Lösung Variante 1 Sub Vorgaenger_Wert()     Dim Bereich As Range, Zelle As Range     Set Bereich = Range("A2:A1000")     For Each Zelle In Bereich.SpecialCells(xlCellTypeBlanks)         Zelle = Zelle.Offset(-1, 0)     Next Zelle End Sub Variante 2 Sub Vorgaenger2_Wert() 'Alternative     Dim Bereich As Range, Zelle As Range     Set Bereich = Range("A2:A1000")     For Each Zelle In Bereich         If Len(Zelle) = 0 Then             Zelle = Zelle.Offset(-1, 0)         End If     Next Zelle End Sub siehe auch Power Query leere Zellen mit Vorgänger, Nachfolger Werten einer Spalte füllen

KGRÖSSTE(), Monitoring TOP X

Mit der Funktion KGRÖSSTE(Matrix;k) kann aus einer Menge von Daten (Matrix) derjenige Wert zurückgegeben werden, welcher einem bestimmten Rang (k) entspricht. Das ist vor allem dann vorteilhaft, wenn sich die Rangfolge der Werte ändert, dennoch aber immer die zB TOP 10 Werte angezeigt werden sollen (Rang 1 - 10). Beispielhaft sei eine Liste genannt, in welcher Lieferanten und deren kumuliertes Einkaufsvolumen (EVO) abgebildet sind. Das EVO wierderum basiert auf einem YTD (Year to Date) Wert, d.h. es kann sich im Zeitverlauf verändern, je nachdem, ob neue Bestellungen getätigt werden. Anders formuliert, der Rang eines Lieferanten gemessen an seinem EVO (YTD) kann sich im Zeitverlauf verändern. Will man jedoch immer die TOP 10 Lieferanten im Blick halten, so kann man diese mit der Funktion KGRÖSSTE() anhand des jeweiligen EVOs (YTD) ermitteln.

Cube Funktionen, Parameter flexibel

Bild
Mit der Formel Klasse CUBE Funktionen (Reiter Formeln -> Funktion einfügen, Kategorie "Cube") können auf Basis eines bestehenden Power Pivot Modells / Datenverbindung gezielt Werte in einem spezifischen Filterkontext adressiert werden. =CUBEELEMENT("PowerPivot Data";"[qry_DLZ_Cockpit].[EK Team].&[ " & B1 & " ]" ) Im obigen Beispiel wird in Abhängigkeit des Zellinhalts in Zelle B1 die jeweilige Ausprägung (Element) des Feldes EK Team aus dem tabellarischen Modell herangezogen. Der erste Parameter der Cube Funktion CUBEELEMENT() steht für die Datenverbindung, der zweite für Tabelle.Feld.Ausprägung (Element) Will man Werte über alle Elemente auswerten (ALL), kann dies mit folgender verschachtelten WENN Funktion erfolgen: =WENN(B1=" All ";CUBEELEMENT("PowerPivot Data";"[qry_DLZ_Cockpit].[EK Team]. [All] ");CUBEELEMENT("PowerPivot Data";"[qry_DLZ_Cockpit].[EK Team].&["