Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Die letzte Spalte auswaehlen die nicht 0 ist

Forumthread: Die letzte Spalte auswaehlen die nicht 0 ist

Die letzte Spalte auswaehlen die nicht 0 ist
11.06.2004 21:42:27
BarbaraM
Hallo ich habe ein sheet in welchem in der 2. Zeile ZAhlen bis zur Spalte x stehen. Danach kommen viele 0. Manchmal ist leider zwischendurch eine 0 aber nicht mehr als 5. Kann ich einer Variable den Wert der letzten Spalte zuordnen.
D.h. er erkennt automatisch dass wenn 5 Spalten 0 kommen er weitersuchen muss und erst aufhoert wenn mehr als 5 Nullen kommen.
Vielen Dank im Vorraus, damit waere mir echt enorm geholfen.
BarbaraM
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Die letzte Spalte auswaehlen die nicht 0 ist
11.06.2004 21:51:17
Josef
Hallo Barbara!
Einfacher ist es, die zeile von rechts zu durchsuchen
und bei einem Wert größer Null die Schleife zu verlassen!
Sub letzteOhneNull() Dim intCol As Integer For intCol = 256 To 1 Step -1 If Cells(2, intCol) <> 0 Then Exit For Next MsgBox intCol End Sub
Gruß Sepp
Anzeige
AW: per Formel geht das so
FP
Hallo Barbara,
Tabelle3
 ABCDEFGHIJKLMNOP
1                
232   1   5   -1  
3              -1<--- nur möglich, wenn Ergebnis NICHT in Zeile 2 stehen muss
Formeln der Tabelle
O3 : {=INDEX(2:2;MAX((2:2<>0)*SPALTE(2:2)))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
Servus aus dem Salzkammergut
Franz
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Die letzte Spalte in Excel auswählen, die nicht 0 ist


Schritt-für-Schritt-Anleitung

Um die letzte Spalte in Excel auszuwählen, die nicht 0 ist, kannst Du den folgenden VBA-Code verwenden. Dieser Code durchläuft die 2. Zeile von rechts nach links und findet den letzten Wert, der ungleich null ist.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Sub letzteOhneNull()
       Dim intCol As Integer
       For intCol = 256 To 1 Step -1
           If Cells(2, intCol) <> 0 Then Exit For
       Next
       MsgBox "Die letzte Spalte mit einem Wert ungleich null ist: " & intCol
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Drücke ALT + F8, wähle letzteOhneNull und klicke auf Ausführen.

Jetzt wird Dir eine MessageBox angezeigt, die die Indexnummer der letzten Spalte enthält, die nicht 0 ist.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 1004: Anwendung oder Objektdefiniert Fehler."

    • Lösung: Stelle sicher, dass Du den Code in einem Modul und nicht in einem Arbeitsblatt eingefügt hast.
  • Fehler: Die letzte Zahl wird zu 0 angezeigt.

    • Lösung: Überprüfe, ob Du die richtige Zeile (in diesem Fall Zeile 2) im Code verwendest. Ändere Cells(2, intCol) zu Cells(Zeilennummer, intCol), falls Du eine andere Zeile analysieren möchtest.

Alternative Methoden

Wenn Du keine Makros verwenden möchtest, kannst Du auch eine Formel benutzen. Die folgende Matrixformel findet den letzten Wert in der 2. Zeile, der ungleich null ist:

  1. Wähle eine Zelle aus, in der das Ergebnis angezeigt werden soll.

  2. Gib die folgende Formel ein:

    =INDEX(2:2, MAX((2:2<>0)*SPALTE(2:2)))
  3. Drücke STRG + SHIFT + ENTER, um die Formel als Matrixformel zu aktivieren.

Diese Methode ist besonders nützlich, wenn Du keine VBA-Kenntnisse hast und trotzdem den letzten Wert einer Zeile ungleich null finden möchtest.


Praktische Beispiele

Angenommen, Du hast die folgenden Werte in Zeile 2:

A B C D E F
3 2 0 0 1 0

Wenn Du den VBA-Code ausführst oder die Matrixformel verwendest, erhältst Du 5, da die letzte Spalte mit einem Wert ungleich null die Spalte E ist.


Tipps für Profis

  • Wenn Du oft mit solchen Aufgaben arbeitest, könntest Du eine benutzerdefinierte Funktion in VBA erstellen, um die Wiederverwendbarkeit zu erhöhen.
  • Denke daran, dass der Excel letzter Wert einer Zeile ungleich null vor allem in großen Datensätzen nützlich ist, um schnell die relevanten Informationen zu extrahieren.
  • Stelle sicher, dass Du Deine Makros speicherst, um zukünftige Fehler zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich die letzte Spalte in einer anderen Zeile finden?
Ändere einfach die Zeilennummer im Code von Cells(2, intCol) zu Cells(Zeilennummer, intCol).

2. Funktioniert das auch in älteren Excel-Versionen?
Ja, der VBA-Code und die Matrixformel funktionieren in den meisten Versionen von Excel, die VBA und Array-Formeln unterstützen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige