Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
996to1000
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

IsNumeric

IsNumeric
25.07.2008 11:48:00
Rolf
Hallo Leute!
Wer kann das makro zum laufen bringen?

Sub  filter()
If IsNumeric(A5)=False Then
Exit Sub
If IsNumeric(A5)=True Then
MsgBox:"in ordnung"
End If
End If
End Sub


22
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Makro
25.07.2008 11:53:00
Backowe
Hi,
Sub filter()
If IsNumeric([A5]) Then
  MsgBox "in ordnung"
End If
End Sub
Gruss Jürgen

AW: Makro
25.07.2008 13:35:52
Rolf
Hallo Backowe!
Deine Änderung funktioniert!
Kann man nicht die Ausgabe
von MsgBox mit einer anderer
Aufgabe austauschen:Wert
übergabe aus A6 nach A7 ?
Grüße
Rolf

Anzeige
AW: Makro
25.07.2008 13:39:46
Backowe
Hi Rolf,
Sub filter()
If IsNumeric([A5]) Then
  [A7] = [A6]
End If
End Sub
Gruss Jürgen

AW: Makro
25.07.2008 15:31:00
Rolf
Hallo Jürgen!
Also übergabe ist in Ordnung aber
selbst Filter macht es nicht!!
Es wird ein Ausdruck von A2 nach A3
übergeben der keine Zahl ist: 9..
Diese 9.. liegt in Zelle links wird also
als Text erkannt jedoch kommt durch!!
Grüße
Rolf

Anzeige
So wird das nichts
25.07.2008 15:51:19
mpb
Hallo Rolf,
nix für ungut. Jürgen hat Deine Fragen korrekt beantwortet. Jetzt sprichst Du eine "Filterung" (Deine Terminologie) an, von der vorher in diesem Thread nie die Rede war. Dieses Problem hast Du nämlich nur in einem anderen Thread angesprochen, allerdings ohne konkret zu schildern, was Du eigentlich willst. Mein dortiger Lösungsvorschlag funktioniert als Formel, Deiner Nachfrage konnte ich jetzt entnehmen, dass Du eine VBA-Lösung benötigst. Warum schreibst Du das nicht gleich? Außerdem wechselst Du ständig unnötigerweise die Beispiele (einmal soll etwas von A1 nach A2, dann von A6 nach A7 und jetzt wieder von A2 nach A3 übernommen werden).
Gib Dir doch mal Mühe, Dein Gesamtproblem verständlich zu beschreiben, z.B. so:
1. Ich suche eine VBA-Lösung für nachstehendes Problem, könnte aber auch mit einer Formellösung leben.
2. In Zelle A1 werden Daten eingetragen (woher kommen die eigentlich?), die entweder Zahlen oder Strings sind. Wenn es eine Zahl ist, soll diese (automatisch) in Zelle A2 übernommen werden.
3. Wenn der nächste Eintrag in A1 erfolgt, soll A2 überschrieben werden (oder was auch immer) usw.
Dann noch eine Beispieldatei hochladen, und man kann sich ernsthaft mit Deinem Problem beschäftigen.
Gruß
Martin

Anzeige
AW: So wird das nichts
25.07.2008 21:29:53
Rolf
Hallo Martin!
Dieses Schreiben von Dir habe leider zu spät entdeckt!
Du hast Dich dochwohl noch nicht mit Filtern befasst.
Ein Filter ist immer da wo sich etwas bewegt.Ein Filter
hat ein Eingang und ein Ausgang.Am Eingang kommt ein
Gemisch von Spam und Data.Am Ausgang muss es nur Data
geben. Ausdruck ( IsNumeric) ist ein Teil von Filter ,wird
ermittelt ob es eine Zahl ist.Und wie man sieht reicht das nicht.
Wie die Lösung kommt wies man im Voraus nicht.
Grüße
Rolf

Ich verstehe nur Bahnhof!
25.07.2008 15:51:34
Backowe
Hi Rolf,
kannst du mal ein Beispiel hochladen, damit ich weiß wovon Du redest! ;o)
Gruss Jürgen

Anzeige
AW: Ich verstehe nur Bahnhof!
25.07.2008 16:18:00
Rolf
Hallo Jürgen!
Ich probiere den Modul rein kopieren.
Aber es ist dochwohl schneller wenn
DU Dein Code in modul unterbringst
und probierst in A2 Testausdrücke
dann lasst DU den Modul durchlaufen
und schaust -ist gefiltert oder nicht.

Sub Filter()
If IsNumeric([A2]) Then
[A3] = [A2]
End If
End Sub


AW: Ich verstehe nur Bahnhof!
25.07.2008 16:19:00
Rolf
Hallo Jürgen!
Ich probiere den Modul rein kopieren.
Aber es ist dochwohl schneller wenn
DU Dein Code in modul unterbringst
und probierst in A2 Testausdrücke
dann lasst DU den Modul durchlaufen
und schaust -ist gefiltert oder nicht.

Sub Filter()
If IsNumeric([A2]) Then
[A3] = [A2]
End If
End Sub


Anzeige
Ich sehe ...
25.07.2008 19:44:00
mpb
... mein Appell, eine nachvollziehbare Problembeschreibung zu formulieren, ist nicht auf fruchtbaren Boden gefallen. Bin gespannt, was Jürgen daraus/damit macht. Ich werde meine Zeit auf Fragen konzentrieren, bei denen der Fragesteller sich ein Mindestmaß an Mühe gibt.
Gruß
Martin

AW: Ich sehe ...
25.07.2008 20:19:59
Rolf
Hallo Martin!
Ich habe die Frage mit dem Filter zuerst zu algemein gestellt.
Und keiner auser Dich hat probiert sie zu lösen!
Dann aber habe zu konkret zu einem Beispiel übergangen
mit (If IsNumeric).Es gibt keinen guten Filter!Und wenn Du
ein Datenfluss hast musst Du Spam von Data trennen.
Auch wenn Du die Daten nur aus einer Zelle in die andere
übergeben musst.Das Makro von Jürgen arbeitet zwar aber
lässt Spam durch.
Grüße
Rolf

Anzeige
Letzter Versuch
26.07.2008 11:31:00
mpb
Hallo Rolf,
letzter Versuch:
Sub Filterung()
If Range("A1") > 500 And IsNumeric(Range("A1")) Then
Range("A2") = Range("A1")
End If
End Sub


in ein normales Modul kopieren. Wenn Du das Makro (manuell startest), wird der Wer aus A1 in A2 eingetragen, wenn es eine Zahl größer 500 ist. Falls das automatisch bei jedem neuen Eintrag in A1 geschehen soll, zusätzlich folgenden Code in das Klassenmodul der Tabelle kopieren (dazu Rechtsklick auf den Tabellenreiter und "Code anzeigen" auswählen):


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then Call Filterung
End Sub


Gruß
Martin
und

Anzeige
AW: Letzter Versuch
26.07.2008 12:25:41
Rolf
Hallo Martin!
Ich freue mich das Du dich gemeldet hast!
Inzwischen habe ich mit "IsNumeric" umgesehen(Google).
Da klagen viele auf die "löcher" bei dieser Funktion.
Ich habe probiert etwas aus mehreren Funktionen(IsText,ISTLEER)
in kombination mit IsNumeric,klappte leider nicht.Das Problem ist
sobald der Filter etwas vom Spam durchlässt geht der Chart kaputt der aus
diesen Daten gebaut wird!
Ich wünsche Dir nur Erfolg!!
Grüße
Rolf

AW: Letzter Versuch
26.07.2008 12:35:27
mpb
Was funktioniert an meinem Code nicht?

AW: Letzter Versuch
26.07.2008 12:59:33
Rolf
Hallo Martin!
Ich habe jetzt Dein Vorschlag eingebract!
Also es funktioniert!
Aber das Teil mit Change musste direkt
in Tabelle reingebracht werden .Im klassen Modul
will er nicht. Wenn ich 9-9-9 eingebe in A1 schaltet
excel auf Datum Format um! Es muss also noch per Code
der Zahl Format eingestellt werden!Am Montag werde ich
testen.
Grüße
Rolf

Anzeige
Ich verstehe mmer noch nichts! ;)
26.07.2008 13:28:03
Backowe
Hallo Martin,
es gibt Menschen, können einfach nicht begreifen, daß Unbeteiligte nicht das gleiche Hintergrundwissen wie der Fragesteller hat. Ich habe mir nochmals alle Postings durchgelesen, was ich verstanden habe, sind folgende Schlagwörter wie Filter, Datenstrom, Spam wird durchgelassen, soll aber nicht, Chart, Tabelle, Isnumeric usw. Ich kann aber aus den Bruchstücken einfach keine verläßliche Assoziation bilden, um daraus ein Bild formen, damit ich dem Fragesteller weiterhelfen kann.
Schade eigentlich für die vertane Zeit! Für mich ist der Thread beendet! :(
Gruss Jürgen

Anzeige
AW: verstehe auch nur Bahnhof ;)
26.07.2008 14:23:00
Tino
Hallo,
mach Dir nichts draus, ich verstehe auch nur Bahnhof.
Welche Daten stehen wo?
Wie sind die Daten aufgebaut?
Was soll mit diesen Daten gemacht werden?
Wo sollen die Daten hin, bei welcher Bedingung?
Eine Datei währe angebracht, wenn man es mit Worten nicht 100% erklären kann.
Gruß Tino

AW: verstehe auch nur Bahnhof ;)
26.07.2008 15:45:25
Rolf
Hallo Tino!
Was ist nur heute mit Allen!
Es geht um die Funktion "IsNumeric"
die in einem Filter eingesetzt soll.
Martin ist ja im Bilde!
Grüße
Rolf

AW: verstehe auch nur Bahnhof ;)
26.07.2008 15:58:00
Tino
Hallo,
wen es einer versteht, dann ist es ja gut.
Gruß Tino

AW: verstehe auch nur Bahnhof ;)
26.07.2008 16:24:00
Rolf
Hallo Tino!
Lassen wir es.
Könntest Du mit vba Mitteln in Zelle A1
einen Zahl Format einstellen?
Grüße
Rolf

AW: verstehe auch nur Bahnhof ;)
26.07.2008 17:00:46
Tino
hallo,
schreibe vom pocket, bin im schwimmbad.
sagst du mir auch welches zahlenfomat?
was für eine zahl oder text ist in a1?
Gruß Tino

AW: Makro
27.07.2008 22:30:08
Jürgen
Hallo Rolf,
wenn ich Dein Problem richtig verstehe, ist die Funktion IsNumeric für Deine Anwendung zu großzügig in dem, was sie als Zahl bewertet.
Der String "9.." kann sehr wohl als Zahlenwert interpretiert werden, auch wenn er für Deine Zwecken nicht tauglich ist. Wenn Du also die Prüfung mit IsNumeric ergänzen möchtest, um das Ergebnis auf Deine Zwecke anzupassen, könntest Du z.B. kritische Zeichen mit der Replace-Funktion entfernen (z.B. "." mit "" ersetzen) und / oder beim Übertragen den Textwert in einen Zahlenwert umwandeln lassen, z.B. so:
If IsNumeric(Range("a5").value then
Range("a6").value = cdbl(Range("a5").value)
end if
Gruß, Jürgen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige