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

Inhalte aus 2 Tabellen vergleichen und doppelte Einträge aus einer Tabelle löschen

Frage Microsoft Microsoft Office

Mitglied: borgadmin

borgadmin (Level 1) - Jetzt verbinden

31.05.2012 um 13:57 Uhr, 8018 Aufrufe, 4 Kommentare

Hallo zusammen,

ich nutze Office 2010 und habe folgendes Vorhaben:

Gegeben sind 2 Excel Tabellen (Könnte die Inhalte der einen Tabelle aber problemlos in ein separates Datenblatt einfügen). In beiden Tabellen sind Addressdatensätze vorhanden.

Aufbau Tabelle 1:
Anrede | Titel | Vorname | Nachname | Email

Aufbau Tabelle 2:
Email


Ziel soll es sein in Tabelle 1 alle Einträge zu löschen die in Tabelle 2 enthalten sind. Ich habe leider überhaupt keinen Ansatz wie ich das mit Excel lösen könnte.

Hat jemand eine Idee für mich?

Viele Grüße
Mitglied: LianenSchwinger
31.05.2012 um 14:13 Uhr
Hallo borgadmin,

kannst Du vielleicht etwas mehr dazu schreiben, was Du als Ziel der Aktion vor hast.

Aus dem Stehgreif würde ich sagen kommst Du nicht um VBA-Programmierung rum.

Gruß Jörg
Bitte warten ..
Mitglied: borgadmin
31.05.2012 um 14:25 Uhr
Hi Jörg,

Hintergund der Aktion ist, dass wir eine Reihe Rückläufer (= Tabelle 2) haben deren Datensätze aus der Original Tabelle entfernt werden sollen. Die Originaltabelle soll also qausi "bereinigt" werden.

Hm, wenn es keine andere Möglichkeit ausser VBA gibt, werde ich das schnell anders machen, die Excel Tabelle als CSV speichern, in eine MySQL Datenbank einspielen, per SQL die Dubletten rauskegeln und als CSV zurückspeichern. Sollte ja auch gehen. VBA müsst ich von vorne anfangen, da 0 Kenntnisse

Es sei denn es hätte jemand eine andere schnellere Idee...
Bitte warten ..
Mitglied: LianenSchwinger
31.05.2012 um 14:41 Uhr
... habe da gerade noch eine Idee

Du machst in Tabelle 1 einen SVERWEIS auf Tabelle 2 und läßt Dir die Email-Adresse übergeben.
Dann machst Du per Autofilter eine Auswahl der Zeilen, die eine Emailadresse in der Spalte haben und machst dann Zeilen löschen.

Gruß Jörg
Bitte warten ..
Mitglied: Nebellicht
01.06.2012, aktualisiert um 13:45 Uhr
Hallo Borgadmin,
so könnte es gehen. Allerdings zusammengebastelt. Code kann bestimmt eleganter geschrieben werden. Dürfte etwas Zeit in Anspruch nehmen je nach Tabellengröße.
Gruß Maik

01.
 
02.
Sub dummies() 
03.
 For tab1 = 1 To 3 
04.
  For tab2 = 1 To 3 
05.
   If Tabelle1.Cells(tab1, "C") = Tabelle2.Cells(tab2, "A") Then 
06.
    'MsgBox ("Übereinstimmung!") 
07.
    Worksheets("Tabelle1").Activate 
08.
    Rows(tab1 & ":" & tab1).Select 
09.
    Selection.Delete Shift:=xlUp 
10.
   End If 
11.
  Next tab2 
12.
 Next tab1 
13.
End Sub 
14.
 
Allerdings müßte noch berücksichtigt werden, dass wenn die Reihe gelöscht wird,
auch der Indexläufer nicht mehr passt. Würde vorschlagen nicht zu löschen sondern
nur kennzeichnen mit "*GELÖSCHT*" und nachher danach zu filtern und dann manuell
markieren und entfernen!
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
gelöst Übertrag in eine andere Tabelle (7)

Frage von charmeur zum Thema Microsoft Office ...

Datenbanken
Eine auf sich selbst referenzierte Tabelle (7)

Frage von Thor01 zum Thema Datenbanken ...

Entwicklung
gelöst SQL Update aus derselben Tabelle (1)

Frage von winscheil zum Thema Entwicklung ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(2)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Netzwerkprotokolle
gelöst Leiten "dumme" Switches VLAN-Tags mit durch? (26)

Frage von coltseavers zum Thema Netzwerkprotokolle ...

Windows Server
gelöst Neues KB für W10 1607 und W2K16 wieder mal nicht im WSUS 3.0, hat das noch jemand? (16)

Frage von departure69 zum Thema Windows Server ...

Netzwerkgrundlagen
Kann auf Freigabe nicht Zugreifen (15)

Frage von leon123 zum Thema Netzwerkgrundlagen ...

Router & Routing
FTTH bzw FTTB Router (13)

Frage von ukulele-7 zum Thema Router & Routing ...