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 String von Zelle zu vorherigen Zelle hinzu fügen

Mitglied: Shaggy84

Shaggy84 (Level 1) - Jetzt verbinden

14.03.2008, aktualisiert 18.03.2008, 5072 Aufrufe, 7 Kommentare

Hallo,

habe mnal wieder ein kleines VBA Problem. Es sollen zwei Zellen verglichen werden. Wenn die Folgezelle das gleiche enthält wird sie ignoriert und eh gelöscht. Wenn sie einen anderen Wert enthält, soll dieser bevor die Zeile gelöscht wird, zur ersteren Zelle hinzugefügt werden.

Direkt die Frage. Ich benutze hier <> in der dritten Zeile, wie lautet der Befehl für "Zelle enthält" bzw. "Zelle enthält nicht"? Sonst entstehen ja Duplikate, obwohl der String schon in der Zelle existiert... und mein Add Befehl funktioniert leider auch noch nicht...

01.
Worksheets(1).Activate 
02.
 
03.
Zeile = 1 
04.
Do While Cells(Zeile, 1).Value <> "" 
05.
 
06.
If Cells(Zeile, 2).Value <> Cells(Zeile + 1, 2).Value Then 
07.
    Cells(Zeile, 2).Add (Cells(Zeile + 1, 2).Value) 
08.
    Zeile = Zeile + 1 
09.
Else 
10.
    Zeile = Zeile + 1 
11.
End If 
12.
     
13.
Loop
Grüße, Gregor
Mitglied: bastla
15.03.2008 um 14:58 Uhr
Hallo Shaggy84!

Das sollte etwa so gehen:
01.
... 
02.
If Not InStr(1, Cells(Zeile, 2).Value, Cells(Zeile + 1, 2).Value, vbTextCompare) Then 
03.
    Cells(Zeile, 2).Add (Cells(Zeile + 1, 2).Value) 
04.
...
Das "VbTextCompare" sorgt dafür, dass Unterschiede hinsichtlich Groß-/Kleinschreibung ignoriert werden - wenn Du einen genauen Vergleich willst, einfach weglassen.

Grüße
bastla
Bitte warten ..
Mitglied: Shaggy84
17.03.2008 um 08:41 Uhr
Hallo bastla,

deine erste Zeile funktioniert soweit gut. Aber meine zweite die hier auch steht funktioniert leider nicht. Als Fehlermeldung bekomme ich "Objekt unterstützt diese Eigenschaft oder Methode nicht" (wie so oft ;) )

War der Ansatz mit dem .Add richtig oder gibts dafür was anderes? Kann man noch einen "/" zwischen zwei Werte setzen?

Grüße, Gregor
Bitte warten ..
Mitglied: bastla
17.03.2008 um 09:18 Uhr
Hallo Shaggy84!

Um die beiden Strings miteinander zu verbinden, wird in VB "&" verwendet, daher:
01.
If Not InStr(1, Cells(Zeile, 2).Value, Cells(Zeile + 1, 2).Value, vbTextCompare) Then 
02.
    Cells(Zeile, 2).Value = Cells(Zeile, 2).Value & "/" & Cells(Zeile + 1, 2).Value
Grüße
bastla
Bitte warten ..
Mitglied: Shaggy84
17.03.2008 um 13:38 Uhr
Hallo bastla,

des funktioniert soweit leider nur halb. Er schreibt mir die Werte trotzdem noch doppelt in die Zelle, obwohl ich deinen Programmcode ebenfalls so verstehe, dass er funktionieren müsst. Vergleicht er vielleicht immer nur den gesamten String oder auch Teilwerte des Strings?!

Als Ergebnis bekomme ich im moment noch Wert1/Wert1/Wert2/Wert1/Wert2 usw. anstatt Wert1/Wert2

Grüße
Bitte warten ..
Mitglied: bastla
17.03.2008 um 14:11 Uhr
Hallo Shaggy84!

Andere Schreibweise:
01.
If InStr(1, Cells(Zeile, 2).Value, Cells(Zeile + 1, 2).Value, vbTextCompare) = 0 Then 
02.
    Cells(Zeile, 2).Value = Cells(Zeile, 2).Value & "/" & Cells(Zeile + 1, 2).Value
Grüße
bastla
Bitte warten ..
Mitglied: Shaggy84
18.03.2008 um 10:36 Uhr
Hey bastla,

funktioniert soweit wunderbar. Die Verneinung im Code mit "Not" und dann mit "=0" am Anfang, glaub da wäre ich auf letzteres nie gekommen.

Vielen Dank nochmals! Gibt's diesmal nen Martini °>-0
Bitte warten ..
Mitglied: bastla
18.03.2008 um 10:45 Uhr
Hallo Shaggy84!

Gibt's diesmal nen Martini °>-0
Bevor Du Deine ganze (virtuelle) Hausbar über mir entleerst : So ziemlich die einzige Form von Alk, die ich zu mir nehme, ist Rum (und den nur in einem Kuchen) - aber trotzdem danke.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Windows Server

Wie füge ich diesem Script die Email Adresse hinzu

gelöst Frage von 131455Windows Server16 Kommentare

Hallo, ich möchte im Exchange 2013 eine Liste erstellen , die mir anzeigt, welche Postfächer mit Vollzugriff berechtigt sind ...

Windows 7

Wie füge ich den plötzlich fehlenden Dienst "Windows-Aktivierungstechnologie" wieder hinzu?

gelöst Frage von Server-NutzerWindows 710 Kommentare

Moin. Auf einmal meint Windows 7 Home Premium, dass Windows nicht aktiviert sei. Also Systemsteuerung/System/Abschnitt Windows-Aktivierung aufgerufen: "Status nicht ...

Microsoft Office

Excel - Spaltenabschnitte in einzelne Zellen fügen - vba

gelöst Frage von AlexIOTMicrosoft Office4 Kommentare

Hallo zusammen, zunächst erkläre ich Ihnen den Aufbau meiner Tabelle: Im Tabellenblatt1: A1 ServernameB Serverowner A2 Servername1B2 A3 Servername2B3 ...

Windows Server

Wie füge ich einen Win Server 2008 zu einem Win Server 2012 hinzu

gelöst Frage von PhadeWindows Server4 Kommentare

Moinsen zusammen, ich arbeite zur Zeit an einem privaten Projekt und versuche, einen Windows 2008 R2 Server, auf dem ...

Neue Wissensbeiträge
Drucker und Scanner
HP-MF-Drucker per Fax angreifbsr
Information von Lochkartenstanzer vor 23 StundenDrucker und Scanner2 Kommentare

Endlich eine sinnvolle Verwendung für Faxe: Damit kann man offensichtlich den Drucker übernehmen. lks

Router & Routing

Das pfSense Buch ist jetzt für jeden kostenlos zu beziehen

Tipp von magicteddy vor 1 TagRouter & Routing2 Kommentare

Bisher war das Buch nur für zahlende Unterstützer verfügbar, jetzt steht für Jedermann kostenlos zur Verfügung. Siehe auch The ...

Firewall

Möglicherweise neue Sicherheitslücke in Mikrotik-Firmware

Information von LordGurke vor 3 TagenFirewall3 Kommentare

Hallo zusammen, vor ein paar Monaten gab es ja bereits eine Sicherheitslücke in der Firmware von Mikrotik-Routern, über welche ...

Erkennung und -Abwehr
Rechner hacken mit Cortana, auch Remote
Information von Lochkartenstanzer vor 4 TagenErkennung und -Abwehr3 Kommentare

heise berichtet über den Vortrag von der Blackhat Open Sesame: Picking Locks with Cortana. Einige Fehler sind schon gefixt, ...

Heiß diskutierte Inhalte
Windows Netzwerk
Performance bei Terminalserver
Frage von azizalexanderWindows Netzwerk20 Kommentare

Hallo zusammen, Ich wusste nicht in welches Thema meine Frage passt ich Bitte um Vergebung falls ich hier falsch ...

CPU, RAM, Mainboards
Xeon E5620: noch schnell genug?
Frage von ahussainCPU, RAM, Mainboards18 Kommentare

Hallo allerseits, ich habe die Möglichkeit, aus Restbeständen einen Tower mit Xeon E5620 CPU und 24 GB RAM zu ...

Exchange Server
Exchange 2013 - Unable to Relay nach extern, SuperMailer
Frage von leon123Exchange Server16 Kommentare

Hallo zusammen, ich brauch mal wieder eure Hilfe. Ich beschäftige mich gerade mit dem SuperMailer und erhalte vom Exchange ...

Windows Server
Remote Desktop Services User Profile Disk - DFS
Frage von einzelkindWindows Server16 Kommentare

Hallo Miteinander, ich richte gerade eine neue RDS Farm auf Basis von Windows Server 2016 ein. Von Server 2012 ...