Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Bestimmte Werte aus einer Zelle auslesen

Frage Microsoft Microsoft Office

Mitglied: CeMeNt

CeMeNt (Level 2) - Jetzt verbinden

05.12.2008, aktualisiert 15:46 Uhr, 8647 Aufrufe, 3 Kommentare

Moin Leute,

aus einer SQL-Datenbank habe ich eine Tabelle nach Excel kopiert.
Nun möchte ich aus einer Zelle bestimmte Werte herauslesen.
In der SQL-Datenbank war dies zuvor ein "Memo"-Feld. Die einzelnen Werte sind dort mit einem Zeilenumbruch getrennt.

Im Excel sieht das dann z.B. so aus:

A_VSG_06mm*?0?(kein)?0?A_VSG_06mm?0?(kein)?0?(kein)?0?(kein)...

Nun möchte ich in einer Zelle nur die Zeichen bis zum ersten Zeilenumbruch auslesen
In einer zeiten Zelle sollen dann die Zeichen zwischen dem zweiten und dem dritten Zeilenumbruch stehen. (usw.)

Das Ergebnis sollte ungefähr so aussehen:

A B C D
1 A_VSG_06mm*?0?(kein)?0?A_VSG_06mm?0 A_VSG_06mm* (kein) A_VSG06mm

Die Länge der einzelnen Werte ist immer unterschiedlich.
Auch die Bezeichnungen sind immer verschieden.
Als einzige "Konstante" kann man den Zeilenumbruch ansehen.

Ich hoffe, dass mir hier jemand helfen kann.

Danke schon mal,

Gruß CeMeNt
Mitglied: bastla
05.12.2008 um 12:44 Uhr
Hallo CeMeNt!

Versuch es mit folgendem Makro:
01.
Sub Aufteilen() 
02.
Range("A:A").Select 
03.
Selection.Replace What:=Chr(10), Replacement:=";", LookAt:=xlPart, SearchOrder:=xlByRows 
04.
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _ 
05.
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Semicolon:=True 
06.
Cells.EntireRow.AutoFit 
07.
Range("A1").Select 
08.
End Sub
Annahme ist, dass sich die aufzuteilenden Zellen (siehe Zeilen 2 und 3) in Spalte A befinden. Sollte es so nicht klappen, kannst Du versuchen, Chr(10) durch Chr(13) oder eine Kombination davon (etwa Chr(13) & Chr(10) oder umgekehrt) zu ersetzen. Die Zeilenschaltungen werden durch ";" ersetzt - falls dieses im aufzuteilenden Text vorkommen sollte, müsste ein alternatives Zeichen verwendet werden - dann etwa so:
01.
Sub Aufteilen() 
02.
Range("A:A").Select 
03.
Selection.Replace What:=Chr(10), Replacement:="§", LookAt:=xlPart, SearchOrder:=xlByRows 
04.
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _ 
05.
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Other:=True, OtherChar:="§" 
06.
Cells.EntireRow.AutoFit 
07.
Range("A1").Select 
08.
End Sub
Grüße
bastla
Bitte warten ..
Mitglied: CeMeNt
05.12.2008 um 13:35 Uhr
Moin bastla,

wie kommst Du bloß immer auf solch verrückte Sachen...?

Aber leider leider funktioniert das noch nicht so wie gewünscht.

Damit das Makro ausgeführt wird, muss ich den gewünschten Text über die Adress-Zeile kopieren und dann in ein neues Tabellenblatt einfügen.
(So funktioniert Dein Makro wirklich prima).

Wenn ich aber z.B. eine ganze Spalte kopiere und einfüge, passiert gar nichts. (Die Zellen werden unformatiert eingefügt)

Am liebsten wäre es mir dann, wenn das Ganze auch mit einer Verknüpfung funktioniert.

z.B. sind die original Werte im Tabellen-Blatt "Übersicht" eingetragen
Im Tabellen-Blatt "Auswertung" könnte ich dann schreiben:

=Übersicht!A1
=Übersicht!A2
=Übersicht!A3
...


Geht das wohl auch irgendwie?
Muss ja auch nicht unbedingt ein Makro sein.
Irgendeine Formel mit
=LINKS "bis zum ersten Zeilenumbruch"

oder in der Art würd mir ja auch schon langen...

Danke schon/noch mal

CeMeNt
Bitte warten ..
Mitglied: bastla
05.12.2008 um 15:46 Uhr
Hallo CeMeNt!

Aber leider leider funktioniert das noch nicht so wie gewünscht.
Und Du hast schon alle Kombinationen von 10 und/oder 13 durch?

Irgendeine Formel mit
=LINKS "bis zum ersten Zeilenumbruch"
setzt ebenfalls voraus, dass die Darstellung des Zeilenumbruches (als Chr(10) bzw Chr(13)) bekannt ist - dann sollte aber eigentlich auch das obige Makro klappen ...

Abgesehen davon - wenn Du in jedem Feld der Spalte A einen Datensatz hast: Wolltest Du diesen tatsächlich jeweils anstatt auf Spalten auf Zeilen aufteilen?

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
gelöst Excel: Einzelne Zeilen einer mehrzeiligen Zelle auslesen (3)

Frage von Booster07 zum Thema Microsoft Office ...

Microsoft Office
gelöst Excel 2010 Zellen mit bestimmten Inhalt mit Makro formartierten (5)

Frage von packmann2016 zum Thema Microsoft Office ...

Neue Wissensbeiträge
Windows Tools

Zeit für Energiesparmodus, Bildschirmabschaltung etc. schnell anpassen

Anleitung von hannsgmaulwurf zum Thema Windows Tools ...

Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(4)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Heiß diskutierte Inhalte
Firewall
Richtige Grundeinstellungen der Pfsense für mein Netzwerk (14)

Frage von Spitzbube zum Thema Firewall ...

Switche und Hubs
gelöst Cisco 2960x Stacking über mehrere Etagen (12)

Frage von b3scher zum Thema Switche und Hubs ...