Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1596to1600
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

Frage an Onur bezüglich Trimfunktion

Frage an Onur bezüglich Trimfunktion
08.12.2017 11:32:26
Marco
Hallo Onur,
ich konnte auf deine damalige Frage (siehe unten Zitate) nicht mehr antworten deswegen antworte ich dir nochmal so. Du wolltest wissen wie die Fehlermeldungen importiert werden. Diese importiere ich aus CSV Dateien über einen Button den ich in der unten angehängten Datei hinzugefügt habe.
Also mein Problem besteht nach wie vor ich importiere eine CSV Datei, dein Code arbeitet alles durch doch manchmal kommt es vor das der Code unterbrochen wird weil ihm irgend ein Fehlercode nicht passt.
Was ich noch sagen muss meine Zellen haben alle das Format Text aber wenn ich die CSV Dateien importieren ist bei den Zellen in denen nur Zahlen vor kommen kein grünes Dreieck. Ich habe auch schon versucht die importierten Werte Mal 1 zunehmen aber das geht auch nicht. Kannst du mir da vielleicht helfen?
Ich habe auch alle Stammdaten komplett neu händisch eingegeben und auch die Zellen als Text formatiert. Da sollte es also keine Probleme mehr geben, wenn dann liegt es vielleicht am Import.
Beispieldatei:
https://www.herber.de/bbs/user/118193.xlsm
Die 3 Funktionen NrMet, NrFehl und NrAnl brauchen String bzw Long. Wenn du jedoch z.B. bei Stammdaten als Anlagennummer 500001 einträgst (also Zahl) und in _ Database "500001" (also String) oder schlimmer " 500001 " (mit Leerzeichen), dann kann der Code Probleme _ bekommen. Deswegen solltest du diese Spalten auch als Text bzw. Zahl formatieren und dich davon ü _ berzeugen, dass keine Leerzeichen beim Import hinzugefügt wurden. Leerzeichen vorne oder hinten kriegt man mit z.B. txt=Trim(txt) weg. Du siehst ja in jeder Zelle anhand der kleinen Dreiecke oben links sehen, ob sie z.B. eine Zahl enthält, obwohl als Text formatiert wurde. Wie werden denn die Fehlermeldungen importiert? Da müsste man ansetzen und mit der Trimfunktion Leerzeichen am Anfang bzw Ende von Strings löschen.

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

Betreff
Datum
Anwender
Anzeige
Frage an alle
08.12.2017 11:53:31
Marco
Frage an alle User, kann es sein das wenn ich per VBA wissen will wie Häufig ein Fehler vorkommt und der Fehler-Text inhaltlich gleich ist aber unterschiedlich geschrieben wird, das dann VBA bei der Auswertung Probleme damit hat?
in Zelle H31 lautet der Fehlercode "GHP Result"
in Zelle H67 lautet der Fehlercode "ghp result"
in Zelle H78 lautet der Fehlercode "GhP ResulT"
Genau bei so was meckert der Code und schmiert ab. Wird in VBA beim aufsummieren (also wie oft ein Fehlercode vorkommt) zwischen Groß- und Kleinschreibung unterschieden obwohl vom Inhalt alles gleich ist?
Wenn ja was kann ich denn dagegen tun?
Anzeige
AW: Frage an alle
08.12.2017 13:21:29
Martin
Hallo Marco,
ja sicher ist das so. Darum solltest du beim Abgleich alle Zeichen mit LCase kleinschreiben:
Sub Beispiel()
MsgBox "GHP Result" = "ghp result"
MsgBox "GHP Result" = "GhP ResulT"
MsgBox LCase("GHP Result") = LCase("ghp result")
MsgBox LCase("GHP Result") = LCase("GhP ResulT")
End Sub
Viele Grüße
Martin
AW: Frage an alle
08.12.2017 13:53:57
Marco
Hm das verstehe ich jetzt nicht ganz. Wie meinst du das ich soll alle Zeichen mit LCase kleinschreiben? Es gibt xxxxx verschiedene Fehlercodes. Soll ich das LCase beim importieren der Daten einbauen?
Es ist so ich importiere die Daten aus einer CSV Datei. Danach klicke ich auf einen Button der mir die Fehlerhäufigkeit und den Fehlercode anzeigt. Und genau da habe ich das Problem mit der Groß-/Kleinschreibung. Wie gehe ich da jetzt vor bzw. wo baue ich LCase ein oder gibt es noch andere Möglichkeiten?
Anzeige
AW: Frage an Onur bezüglich Trimfunktion
08.12.2017 17:34:25
onur
Poste doch auch mal dioe csv-datei.
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 00:59:18
Marco
Kann ich gerne machen Onur, aber die kann nur die Datensätze zu Verfügung stellen die auffällig waren ich darf keine originale CSV Datei ausgeben ich hoffe du verstehst das.
Beispiel CSV Datei: https://www.herber.de/bbs/user/118201.zip
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 02:19:59
onur
Kann nicht geöffnet werden, da beschädigt.
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 11:14:03
Marco
Hm komisch. Ka warum das so ist bei mir lässt die Datei sich öffnen. Ist die CSV Datei denn überhaupt wichtig? Reicht es nicht wenn ich den Code poste mit dem ich die CSV Datei importiere? Wo sollte den LCase stehen? Da wo der kopiervorgang abläuft?
Private Sub Speichern_Click()
With Sheets("Cache")
loLetzte = .Cells(Rows.Count, 4).End(xlUp).Row + 1
If loLetzte  0 Then
PosAt2 = InStr(PosAt1 + 1, sText, "@")
End If
If PosAt2 > 0 Then
.Cells(zeile, 1).Value = "" & Mid(sText, PosAt2 + 1)
End If
Next
'nicht benötigte Spalten löschen von rechts nach links _
benötigt werden die Spalten 1, 3, 4, 6, 8, 9, 10, 12 und 13
lastCol = .UsedRange.Column + .UsedRange.Columns.Count - 1
If lastCol > 13 Then
.Range(.Columns(14), .Columns(lastCol)).Delete
End If
.Columns(11).Delete
.Columns(7).Delete
.Columns(5).Delete
.Columns(2).Delete
'Die Spalten sollten dann in meinem Tabellenblatt in der folgenden Reihenfolge _
aufgeführt sein: 1, 3, 6, 4, 13, 8, 9, 10, 12
'Spalte 13 verschieben
.Columns(9).Cut
.Columns(5).Insert
'.Columns(7).Cut
'.Columns(6).Insert
'Spalte 6 verschieben
.Columns(4).Cut
.Columns(3).Insert
End With
End Function

Anzeige
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 11:16:43
onur
Wie soll ich denn den Code überprüfen, wenn ich nicht weiss, WIE (in welchem Format/Zustand) die Daten ankommen?
Abgesehen davon, wo ist denn bei deiner Beispieldatei das Blatt "Cache"?
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 11:35:32
Marco
Sorry das habe ich übersehen dass das Blatt Cache gar nicht dabei ist. Ich habe es nochmal angepasst und auch die CSV Daten importiert. In dem Format kommen die Daten in meine Datenbank. Also ich importiere die Daten in das Blatt "Cache" da werden die Duplikate entfernt und die Spalten so sortiert wie ich sie benötige und die Spalten die ich nicht brauche werden entfernt. Und danach werden dann alle Werte automatisch in das Blatt "Data Base" kopiert allerdings nur die Werte keine Formatierung usw...
Datei:
https://www.herber.de/bbs/user/118208.xlsm
Anzeige
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 11:42:52
onur
Es war ja auch nie die Rede davon, dass die Mat-Numern plötzlich 13-stellig sind.
Mache mal aus:
Public Mat(100) As Long
im Modul
Public Mat(100) As double
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 12:50:08
Marco
Okay habe ich gemacht. Aber LCase muss ich trotzdem irgendwo verwenden wegen der Groß-/Kleinschreibung von den Fehlercodes
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 15:19:06
onur
Da ICH keine Fehlermeldung mehr habe, weis ich nicht, was du meinstz.
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 16:20:02
onur
Dein ganzer restlicher code ist doch ein Flickenteppich aus im Netz gefundenen und von Anderen geschriebenen Codeschnipseln.
Schau dir doch mal das ursprüngliche Blatt "Data" und die neue Version davon an: Da stimmt doch gar nix mehr überein.
Wie soll denn da mein Code noch korrekt arbeiten?
Anzeige
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 19:17:42
Marco
Natürlich sieht dein Code anders aus schließlich haben sich die Anforderungen geändert, aber das wusste ich ja vorher nicht woher auch. Ich habe dich gefragt ob du es noch einmal anpassen würdest und du hast nein gesagt, weil ich von Anfang an nicht gesagt habe was ich genau möchte. Aber das liegt nur daran das ich gar nicht wusste das es eine Rolle spielt wenn in den Zellen in "Data Base" oder "StammDaten" Zahlen, Buchstaben und Groß-/Kleinschreibung vorkommt.
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 19:22:33
onur
Wenn du mir die aktuelle Datei UND die csv schickst (ruhig auf 10-20 Sätze gekürzt), kann ich mal reinschauen.
Anzeige
AW: Frage an Onur bezüglich Trimfunktion
09.12.2017 19:35:27
Marco
Okay dann fahre ich jetzt nach Hause und mach den anderen PC an. Ich beschreibe dann auch alles so genau wie es nur geht.
AW: Frage an Onur bezüglich Trimfunktion
10.12.2017 06:09:56
Hajo_Zi
Warum offen? Soll Dich jemand nach Hause fahren?

Ich gebe keinen Dank für eine Rückmeldung, da ich durch solche Beiträge nicht meine Beitragszahl erhöhen muss.
Also ich schreibe keine Beiträge mit dem Betreff "Gerne u. Danke für die Rückmeldung. o.w.T."
Rückmeldung ist ja in der Heutigen Zeit nicht üblich und die wenigen die eine Rückmeldung geben,
mögen mir das verzeihen, das kein Danke für eine Rückmeldung kommt.
Beiträge von Werner, Luc, robert und folgende lese ich nicht.
Anzeige
AW: Frage an Onur bezüglich Trimfunktion
10.12.2017 09:57:23
Marco
Morgen Onur und Entschuldigung das es so lang gedauert hat, aber ich musste so einiges rauslöschen und testen nicht das es wie beim letzten mal ist und du die CSV Datei nicht öffnen kannst.
Ich habe die Werte schon in das Tool geladen, aber zum ausprobieren auch die CSV Datei mit geschickt.
Anforderungen:
1. Stationsnamen können Zahlen, Buchstaben oder Zahlen mit Buchstaben gemischt sein (Funktioniert, das hast du damals so programmiert)
2. Materialnummern können Zahlen, Buchstaben oder Zahlen mit Buchstaben gemischt sein (Funktioniert auch, das hast du damals so programmiert)
3. Die Fehlermeldungen bestehen aus Zahlen, Buchstaben und Sonderzeichen gemischt (das funktioniert auch). Des Weiteren was neu für mich war, da ich noch nie so eine CSV Datei mit solch einem Inhalt hatte, die gleiche Fehlermeldung kann unterschiedlich geschrieben sein, sprich mit großen und/oder kleinen Buchstaben (Beispiel. result oder Result oder REsULT)
Wegen der Groß-/Kleinschreibung erhalte ich aktuelle immer eine Meldung das der Feldercode nicht gepflegt ist und dieser dann das Ergebnis verfälscht. Im Internet habe ich gelesen das man mit LCase das Problem beheben kann. Weil du aber den Code geschrieben hast und nicht ich weiß ich nicht wo und wie man diesen Befehl am besten einbaut.
Test-Datei: https://www.herber.de/bbs/user/118223.zip
Anzeige
Vielen Dank Onur
10.12.2017 18:53:31
Marco
Herzlichen Dank Onur es funktioniert tadellos.
Userbild
Danke auch an alle anderen
10.12.2017 19:00:08
Marco
Sorry Onur ich wollte noch was sagen und zwar habe ich gesehen das du UCase verwendet hast und somit alles groß geschrieben wird. Deswegen habe ich das geändert und LCase hergenommen das sollte aber keinen Einfluss auf die Prozedur haben oder?
Schönen Sonntag noch
AW: Danke auch an alle anderen
10.12.2017 19:04:14
onur
Spielt keine Rolle, hauptsache alles einheitlich.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige