Leere Excel Zelle nicht als Null werten?

Hey Leute, ich habe folgendes Problem:

Ich wollte in einer Exceltabelle alle Werte innerhalb einer Spalte, die 2 oder mehr von einander abweichen gelb markieren. Also in der Reihe "2,3,3,4,2" würden die beiden 2er und die 4, nicht aber die 3er markiert.

Dies habe ich über bedingte Formatierung mit der Formel =ODER(ABS(B1-B2)>=2;ABS(B3-B2)>=2;...) hinbekommen.

Klappt alles soweit wie am Schnürchen. Nur leider werter Excel leere Zellen als Null, was dazu führt, dass wenn eine einzige Zelle leer bleibt, meistens alle anderen Zellen gelb eingefärbt werden. Ich würde das gerne vermeiden und leere Zellen einfach ignorieren (bzw. in einer anderen Farbe, z.B. rot, markieren, aber das ist erstmal zweitrangig).

Die meistens Lösungen die ich online gefunden haben, beziehen sich darauf die Null auszublenden, was mir natürlich in meinem Fall wenig bringt. Auch habe ich häufiger gelesen, dass man die Null durch (unsichtbare) Standhaltervariablen ersetzten kann, das funktioniert aber leider bei mir auch nicht, da neben der Markierung auch ein Durchschnitt berechnet werden soll, wobei die Standhalter dann stören würden.

Natürlich könnte ich jetzt alle einzelnen Formeln noch einmal bearbeiten um für den Fall "Null" eine eigene Entscheidung einzufügen, aber das würde ich gerne vermeiden wenn es eine einfachere Lösung gibt.

Ich hoffe hier kann mir jemand helfen :D

MfG
Manuel

Computer, Arbeit, Office, Microsoft Excel, Technik, IT, Microsoft Office, Büro, Formel
PHP XLSX Writer überspringt erste Zeile - was tun?

Hey!

Ich habe gestern die Erweiterung PHP XLSX Writer gefunden und meinem System hinzugefügt. Ziel: Datenbank mit PHP (und mysqli) in ein Excel Dokument umwandeln. Irgendwie überspringt er die erste Zeile und spuckt mir im Dokument erst alles ab id=2 aus... Wisst ihr woran das liegt?

Danke schonmal für eure Antworten!

Hier noch der Quellcode von meiner export.php:

<?php
include "config.php";
include_once("../includes/excel/xlsxwriter.class.php");
//ini_set('display_errors', 0);
//ini_set('log_errors', 1);
//error_reporting(E_ALL & ~E_NOTICE);


    date_default_timezone_set('Europe/Berlin');
    $filename = "PZUS_" . date('Y-m-d') . ".xlsx";


    header('Content-disposition: attachment; filename="'.XLSXWriter::sanitize_filename($filename).'"');
    header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
    header('Content-Transfer-Encoding: binary');
    header('Cache-Control: must-revalidate');
    header('Pragma: public');   
    $sql="SELECT * FROM tbl_contact";
    $result = $link->query($sql); 
    $row = $result->fetch_assoc(); 
    $header = array(
      'ID'=>'string',
      'Nachname'=>'string',
      'Vorname'=>'string',
      'Klasse'=>'string',
      'Bemerkung'=>'string',
      'Datum'=>'string',
      'Email'=>'string',
      'Adresse'=>'string',
      'Tel'=>'string',
    );
    $writer = new XLSXWriter();
    $writer->writeSheetHeader('PZUS-1', $header);
    $array = array();
    while ($row=$result->fetch_assoc())
    {
        $array[1] = $row['id'];
        $array[2] = $row['fldSurname'];
        $array[3] = $row['fldFirstname'];
        $array[4] = $row['fldClass'];
        //$array[4] = $row['fldCourse'];
        $array[5] = $row['fldDmg'];
        $array[6] = $row['fldDate'];
        $array[7] = $row['fldEmail'];
        $array[8] = $row['fldAdress'];
        $array[9] = $row['fldTel'];
        $writer->writeSheetRow('PZUS-1', $array);
    };


    //$writer->writeSheet($array,'Sheet1', $header);//or write the whole sheet in 1 call    


    $writer->writeToStdOut();
    //$writer->writeToFile('example.xlsx');
    //echo $writer->writeToString();
    exit(0);
Computer, Microsoft Excel, HTML, programmieren, Export, MySQL, PHP
Kann ich RGB Farben statt Indexfarben nutzen?

Ich habe eine Exceltabelle in der ich durch Zahleneingabe, bestimmte Zellen in den Indexfarben einfärben kann. Ich gebe eine Zahl ein und die Zelle und alle damit verbunden Zellen oder Zellen, welche die gleiche Funktion vorweisen müssen färben sich.

Nun gibt es nur 56 Indexfarben, welche zudem auch noch ziemlich grelle Farben sind. Ich hätte gerne ein größeres Spektrum an Farben, welches ich durch die RGB Farben bekommen kann. Nur weis ich nicht wie ich dies jetzt in meine Funktion einsetzen soll.

Ich habe nur ein Feld um eine Zahl reinzuschreiben und nicht 3, also ein Feld für R, eins für G und eins für B ist nicht umsetzbar.

Anbei meine VBA Programmierung:

Sub Farbe_Topic()
' Farbe_Topic Makro: Hier wird jetzt das "Status-Feld" in der gleichen Farbe formatiert, wie die, die auch in den ARbeitsblättern gewünscht ist
' Tastenkombination: Strg+w
  Range("B2:C2").Select
  With Selection.Interior
    .Pattern = xlSolid
    .PatternColorIndex = xlAutomatic
    .ColorIndex = Tabelle11.Cells(2, 3) ' In dieser Zelle steht zum Beispiel eine 3 --> somit Farbe rot
    .TintAndShade = 0
    .PatternTintAndShade = 0
  Selection.Font.ColorIndex = Tabelle11.Cells(2, 11)
  End With
  Range("B3:C3").Select
  With Selection.Interior
    .Pattern = xlSolid
    .PatternColorIndex = xlAutomatic
    .ColorIndex = Tabelle11.Cells(3, 3)
    .TintAndShade = 0
    .PatternTintAndShade = 0
  Selection.Font.ColorIndex = Tabelle11.Cells(3, 11)
  End With
 
  Range("B4:C4").Select
  With Selection.Interior
    .Pattern = xlSolid
    .PatternColorIndex = xlAutomatic
    .ColorIndex = Tabelle11.Cells(4, 3)
    .TintAndShade = 0
    .PatternTintAndShade = 0
  Selection.Font.ColorIndex = Tabelle11.Cells(4, 11)
  End With
  Range("B5:C5").Select
  With Selection.Interior
    .Pattern = xlSolid
    .PatternColorIndex = xlAutomatic
    .ColorIndex = Tabelle11.Cells(5, 3)
    .TintAndShade = 0
    .PatternTintAndShade = 0
  Selection.Font.ColorIndex = Tabelle11.Cells(5, 11)
  End With
  Range("B6:C6").Select
  With Selection.Interior
    .Pattern = xlSolid
    .PatternColorIndex = xlAutomatic
    .ColorIndex = Tabelle11.Cells(6, 3)
    .TintAndShade = 0
    .PatternTintAndShade = 0
  Selection.Font.ColorIndex = Tabelle11.Cells(6, 11)
  End With
  Range("B7:C7").Select
  With Selection.Interior
    .Pattern = xlSolid
    .PatternColorIndex = xlAutomatic
    .ColorIndex = Tabelle11.Cells(7, 3)
    .TintAndShade = 0
    .PatternTintAndShade = 0
  Selection.Font.ColorIndex = Tabelle11.Cells(7, 11)
  End With
  Range("B8:C8").Select
  With Selection.Interior
    .Pattern = xlSolid
    .PatternColorIndex = xlAutomatic
    .ColorIndex = Tabelle11.Cells(8, 3)
    .TintAndShade = 0
    .PatternTintAndShade = 0
  Selection.Font.ColorIndex = Tabelle11.Cells(8, 11)
  End With

Vielleicht hilft dieses Bild noch dabei:

Bild zum Beitrag
Microsoft Excel, VBA

Meistgelesene Beiträge zum Thema Microsoft Excel