Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Csv datei auslesen und den vorhandenen spaltenwert ersetzen durch einen anderen, wenn vorhanden

Frage Entwicklung

Mitglied: diggga

diggga (Level 1) - Jetzt verbinden

20.08.2010 um 10:57 Uhr, 5179 Aufrufe, 8 Kommentare

moin alle zusammen,
ich habe folgendes problem:

meine aufgabenstellung sieht so aus:

ich habe eine .csv datei, aus der ich die spalte/zeile "I2-I977" auslesen will und wenn der wert "e" vorhanden ist durch "2% skonto" ersetzen und wenn nicht den wert "v" durch "3% skonto" ersetzen.

ich hoffe es kann mir jemand helfen.
Mitglied: bastla
20.08.2010 um 14:20 Uhr
Hallo diggga!

Ausgehend von der Überlegung, dass CSV-Dateien eher selten Spalten und Zeilen der Art "I2-I977" aufweisen, nehme ich an, dass es sich eigentlich um eine Excel-Datei handelt; wenn dem so sein sollte, könntest Du die entsprechenden Zellen markieren und Strg+h verwenden (ggf auch als - aufgezeichnetes - Makro) ...

Grüße
bastla
Bitte warten ..
Mitglied: diggga
20.08.2010 um 15:54 Uhr
hallo bastla,

stimmt, haste recht handelt sich um eine excel-datei, nur will ich nicht die datei dafür öffen damit ich die zelle ändern will.
in der zelle I2-I977 sind immer unterschiedlich die bezeichnung e und v eingetragen und über ein makro würde ich gerne einfach nur das drüberlaufen lassen wollen und somit dann den wert e ersetzen durch 2% anderen und wenn nicht e sondern v vorhanden ist, den durch 3% ersetzen.

mfg
Bitte warten ..
Mitglied: bastla
20.08.2010 um 17:07 Uhr
Hallo diggga!
nur will ich nicht die datei dafür öffen damit ich die zelle ändern will.
Nur interessehalber: Warum nicht? Ein entsprechendes Makro ist schnell aufgezeichnet und sieht, etwas hybsch gemacht, zB so aus:
01.
Sub Makro1() 
02.
Range("I2:I977").Replace What:="e", Replacement:="2% skonto", LookAt:=xlWhole 
03.
Range("I2:I977").Replace What:="v", Replacement:="3% skonto", LookAt:=xlWhole 
04.
End Sub
Und: Wo kommen die Daten überhaupt her, und lässt sich nicht bereits dort dafür sorgen, dass die richtigen Inhalte eingetragen sind?

Grüße
bastla
Bitte warten ..
Mitglied: Biber
20.08.2010 um 18:19 Uhr
Moin bastla,

Zitat von bastla:
... und lässt sich nicht bereits dort dafür sorgen, dass die richtigen Inhalte eingetragen sind?
Ich sach mal so: ich würde mich mal auf den Standpunkt stellen, dass die beiden Werte "e" und "v" schon in der Tendenz die "richtigeren Inhalte" sind.
Die verbale Langtext-Beschreibung ist doch nur eine Formatierungsangelegenheit.

Somit würde ich doch mindestens den Weg prüfen:die auch als prüfbaren Wert zu übernehmen.
Falls nur die Werte "v" und "e" erlaubt sind (=eines von beiden muss angeben sein),
dann können sie auch als WAHR und FALSCH behandelt werden.
Und es reicht, eine (Zahl) Null zu übernehmen wenn der Fall "v" nicht gegeben ist und eine 1, wenn der Fall "v" gegeben ist.
Dann habe ich bei ein paar tausend Zeilen schon ein paar Byte gespart, kann jede 0 oder eins über "Benutzerdefiniertes Format" als ""3% Skonto";"kein Skonto";"2% Skonto" formatieren (und somit anzeigen lassen).

Wenn ich gedanklich so weit bin, dann kann ich aber auch sagen: Ja Hey! Dann brauch ich die Manipulation der Importdaten doch gar nicht zu machen - ich lasse jedes "v" ein "v" bleiben, jedes "e" ein "e" und prüfe in einer neuen Spalte, ob der Wert ="v" ist.
Wenn ja--> "3% Skonto" , wenn nein (oder auch explizit wenn wert ="e" dann "2% Skonto" anzeigen.
Und die eigentliche Spalte mit "v" oder "e" blende ich aus.

Nichts gegen Manipu^H^H^H Nachbearbeitung von Importdateien - aber wenn es nur um Anzeige-Formatierung geht, dann sehe ich selten auf Anhieb die Notwendigkeit.

Grüße
Biber
Bitte warten ..
Mitglied: diggga
20.08.2010 um 19:24 Uhr
nabend bastla, biber,
vielen danke für die lösungen.
die .csv datei wird von einen firmenstandort zum andern verschickt und nachts soll die datei mit einer 2ten abgeglichen werden.
da leider noch unterschiedliche methoden für die erstellung der csv datei verwendet werden soll durch das ausführen nur diese spalte nachts automatisch die e und v werte ersetzen, damit es einheitliche datensätze sind.

mfg
diggga
Bitte warten ..
Mitglied: bastla
20.08.2010 um 19:30 Uhr
Hallo diggga!
... da leider noch unterschiedliche methoden für die erstellung der csv datei verwendet werden
Umso mehr würde ich an der Quelle ansetzen, anstatt diesen Zustand noch länger künstlich am Leben zu erhalten ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
20.08.2010 um 20:11 Uhr
Moin diggga,

hätte ich nicht diplomatischer ausdrücken können als bastla.
Ihr steckt unnötige Arbeit in die Symptom-Bereinigung - in der Zeit hättet ihr auch eine Mail an den Datenerzeuger/-liefanten schreiben können.

Dann wäre vielleicht montag abend schon alles gut.
So müsst ihr nochmal eure Prozesse anpassen, sobald er die Daten "einheitlich" geliefert werden.

Grüße
Biber
Bitte warten ..
Mitglied: diggga
21.08.2010 um 15:58 Uhr
moin,
jupp da habt ihr beide recht aber was will man machen mehr als dem kunden nen einheitliches system anbieten kann man auch nicht.
in naher zukunft wird er sich sowieso umstellen müssen aber das is solange sein prob :P

also schönes we noch und thX nochmals.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Wenn Verzeichnis vorhanden dann ersetze Datei
gelöst Frage von xbast1xBatch & Shell4 Kommentare

Hallo zusammen, ich benötige ein Skript für folgendes Szenario. Wenn Verzeichnis "Muster" vorhanden, dann ersetze Datei "xyz". Hat evtl. ...

Windows Server
Gruppenrichtlinie - Datei ersetzen unter vorhandenen lokalen Profilen
gelöst Frage von lisaluftWindows Server1 Kommentar

Ich möchte per Gruppenrichtinie (2008R2) auf einen Win7-PC (wenn es klappt natürlich auf mehreren) eine Datei ersetzen. An und ...

Batch & Shell
String aus Spalte in csv auslesen und ersetzen
Frage von mIsSteRBatch & Shell4 Kommentare

Hallo, meine aktuelle Frage bezieht sich auf diese Frage von Dienstag. Ich muss nun eine csv auslesen und dort ...

Windows 10
Profillaufwerk vorhanden und gleichzeitig nicht vorhanden
gelöst Frage von HanutaWindows 104 Kommentare

Hallo Zusammen, wir verteilen für jeden user bei uns in der Domäne ein Persönliches Netzlaufwerk über das Profil der ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 21 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 1 TagRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 4 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 5 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Windows 10
Probleme mit Dateien, deren Pfad + Dateiname länger als 256 Zeichen sind
Frage von FalaffelWindows 1011 Kommentare

Guten Tag, unter Windows 10 scheint es immer noch das Problem zu geben, dass der Pfad + Dateiname einer ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware10 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Microsoft Office
Outlook 2016 - Makro startet nicht über Knopf im Menüband
Frage von ZunarasMicrosoft Office9 Kommentare

Schönen guten Tag! ich brauche wieder einmal Hilfe. Ich möchte gerne von Office 2010 32bit auf 2016 64bit wechseln ...