Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Fehler Datenanalyse nichtnumerische Werte VBA

Forumthread: Fehler Datenanalyse nichtnumerische Werte VBA

Fehler Datenanalyse nichtnumerische Werte VBA
10.01.2019 12:50:43
Sascha
Hallo liebe Excel-Experten,
ich benötige mal wieder Hilfe für meinen VBA Code.
Und zwar führe ich via VBA eine Regression (Datenanalyse) in Excel aus. Teilweise kommt es jedoch vor, dass die benötigten Werte hierfür nicht via Schnittstelle (Bloomberg) geladen werden können ("#N/A N/A" als Ausgabe im Eingabebereich) und somit Excel die Meldung "Regression - Eingabebereich beinhaltet nichtnumerische Werte" meldet und somit das Makro stoppt.
Leider funktioniert On Error Resume Next / GoTo hier nicht.
Habt ihr eine Idee wie ich diese Meldung automatisch bestätigen kann und somit das Makro nicht stoppt?
Vielen lieben Dank im Voraus.
Viele Grüße
Sascha
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler Datenanalyse nichtnumerische Werte VBA
10.01.2019 13:51:06
Daniel
Hallo Sascha,
du kannst alle Fehlermeldungen ausblenden, wenn du deinen Code wie folgt ergänzt:
Sub Regression()
Application.DisplayAlerts = False
Dein Code
Application.DisplayAlerts = True
End Sub
Musst halt nur drauf achten, wie im Beispiel am Ende die Fehlermeldungen wieder zu aktivieren. Und dir bewusst machen, dass auch alle anderen Fehlermeldungen unterdrückt werden! Insofern ist das immer so eine Sache mit der Unterdrückung.
Gruß
Daniel
Anzeige
AW: Fehler Datenanalyse nichtnumerische Werte VBA
10.01.2019 14:19:19
Sascha
Hallo Daniel,
vielen Dank für deine Hilfe. Ich habe den Code wie von dir beschrieben ergänzt, aber leider poppt das Fenster immer noch auf.
Hast du vielleicht noch eine Idee?
Danke und Grüße
Sascha
AW: Fehler Datenanalyse nichtnumerische Werte VBA
10.01.2019 13:59:04
Sascha
Anbei noch ein Bild der Fehlermeldung, falls das etwas hilft.
Userbild
Anzeige
Drittanbieter
10.01.2019 16:23:38
mmat
Hallo Sascha,
das sieht so aus, als käme der Fehler aus irgend einer Funktion, die von einem Drittanbieter (Bloomberg) zur Verfügung gestellt wird. Wahrscheinlich ist der Quellcode nicht offen.
Wenn meine Vermutung stimmt, kann man eigentlich nix anderes machen, als die Funktion eben nicht aufzurufen, wenn der Eingabe-/Parameterbereich #N/A enthält. Ob sich das realisieren lässt kann ich ohne Kenntnis deiner Regressionsroutine aber auch nicht sagen.
vg
Anzeige
AW: Drittanbieter
14.01.2019 15:25:24
Sascha
Hallo Mmat,
sorry für die späte Rückmeldung, ich hatte leider erst heute wieder Zugriff zur Schnittstelle. Danke deinem Hinweis konnte ich nun eine Lösung für mich finden, vielen Dank dafür.
Falls andere Leute das selbe Problem haben: Ich habe in meinen VBA Code for der Regression eine Prüfgröße mit der Zählenden-Funktion gebildet. Hiermit kann ich zählen ob ein Fehlerwert (in meinem Fall "#N/A N/A) im Eingabebereich vorhanden ist. Diesen Prüfwert nutze ich dann in einer IF-Funktion als Bedingung, sodass die Regression nur beim Prüfwert 0 (kein Fehler im Eingabebereich) startet.
Viele Grüße
Sascha
Anzeige
AW: Drittanbieter
14.01.2019 15:27:06
Sascha
Es soll natürlich Zählenwenn-Funktion heißen, auch wenn es die Autokorrektur anders sieht.
Viele Grüße
Sascha
;
Anzeige
Anzeige

Infobox / Tutorial

Fehlerbehebung bei der Datenanalyse in Excel: Nicht-numerische Werte in VBA


Schritt-für-Schritt-Anleitung

  1. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor in Excel zu öffnen.

  2. Neues Modul hinzufügen: Rechtsklicke auf dein Projekt und wähle Einfügen > Modul.

  3. Code zur Regression eingeben: Füge den folgenden Code ein, um die Regression durchzuführen:

    Sub Regression()
       Application.DisplayAlerts = False
       ' Dein Regressionscode hier
       Application.DisplayAlerts = True
    End Sub
  4. Fehlerbehandlung einfügen: Um die Fehlermeldung für nicht-numerische Daten zu umgehen, füge eine Prüfgröße ein, die überprüft, ob dein Eingabebereich fehlende Werte enthält. Zum Beispiel:

    Dim Fehlerwert As Long
    Fehlerwert = Application.WorksheetFunction.CountIf(Range("DeinEingabebereich"), "#N/A")
    If Fehlerwert = 0 Then
       ' Starte die Regression
    Else
       MsgBox "Eingabebereich enthält nicht numerische Daten."
    End If
  5. Makro ausführen: Schließe den VBA-Editor und führe das Makro in Excel aus.


Häufige Fehler und Lösungen

  1. Fehlermeldung: Eingabebereich enthält nicht-numerische Werte

    • Lösung: Stelle sicher, dass der Eingabebereich keine #N/A-Werte enthält. Verwende die oben beschriebene Zählenden-Funktion, um diese zu filtern.
  2. Die Datenanalyse funktioniert nicht

    • Lösung: Überprüfe, ob die Datenanalyse in Excel aktiviert ist. Gehe zu Datei > Optionen > Add-Ins und aktiviere die Datenanalyse.

Alternative Methoden

  • Excel-Datenanalyse aktivieren: Wenn du die Datenanalyse nicht nutzen kannst, gehe zu Datei > Optionen > Add-Ins, wähle Excel-Add-Ins und aktiviere Analyse-Funktionen.

  • Stichprobenziehung in Excel: Nutze die Funktion ZUFALLSZAHL() für die Auswahl von Stichproben, um sicherzustellen, dass nur numerische Daten verwendet werden.


Praktische Beispiele

  • Regressionsanalyse durchführen: Angenommen, du hast eine Tabelle mit Verkaufszahlen und Marketingausgaben. Dein Eingabebereich könnte so aussehen:

    Range("A1:B10") ' Beispiel für Eingabebereich
  • Prüfung auf nicht-numerische Daten:

    If Application.WorksheetFunction.CountIf(Range("A1:B10"), "#N/A") = 0 Then
       ' Starte die Regression
    End If

Tipps für Profis

  • Nutze On Error Resume Next mit Bedacht, da es alle Fehlermeldungen unterdrückt. Überlege, ob es sinnvoller ist, spezifische Fehler abzufangen.
  • Halte deine Daten immer sauber und frei von nicht-numerischen Werten, um Probleme bei der Datenanalyse in Excel zu vermeiden.
  • Verwende VBA-Funktionen wie IsNumeric(), um sicherzustellen, dass deine Daten die richtige Form haben, bevor du sie in die Regression einbeziehst.

FAQ: Häufige Fragen

1. Wie kann ich die Datenanalyse in Excel aktivieren?
Gehe zu Datei > Optionen > Add-Ins, wähle Excel-Add-Ins und aktiviere die Analyse-Funktionen.

2. Was soll ich tun, wenn der Eingabebereich Fehlwerte enthält?
Nutze die Zählenwenn-Funktion, um nach #N/A-Werten zu suchen, und führe die Regression nur aus, wenn diese nicht vorhanden sind.

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