PDA

Vollständige Version anzeigen : Doppeleinträge löschen,Eintrag mit meisten Infos beibehalten


conax
01.04.2012, 12:24
Hallo,

Wie der Threadtitel schon sagt suche ich eine Möglichkeit Doppeleinträge zu löschen, und den Eintrag mit den meisten Infos beizubehalten.

Beispiel: (falls Lücke dann leer)

Kundennummer | Name | Telefonnummer
-------------------------------------------------
1337 | |
1337 | Hans | 01235456
1338 | Jörg |
1338 | |
1338 | Jörg | 73256573
1339 | |
1340 | Olaf |
1340 | |
1341 | |
1341 | |

-> Hier müssten die Zeilen über bleiben:
1337 | Hans | 01235456
1338 | Jörg | 73256573
1339 | |
1340 | Olaf |
1341 | |

Zu beachten gilt, auch Kunde 1339 bleibt über ( in dem Falle nichtmal ein Doppeleintrag), und auch nur einmal Kunde 1341
Viele Lösungsvorschläge die mir Präsentiert wurden hatten zur Folge, dass (in diesem Beispiel) 1339 und 1341 komplett wegfallen würden.

Ich bitte um Hilfe und Danke im Vorraus!

Beverly
01.04.2012, 12:55
Hi,
Sub Loeschen()
Dim lngZeile As Long
For lngZeile = 10 To 2 Step -1
If Cells(lngZeile, 1) = Cells(lngZeile - 1, 1) Then
If Application.CountA(Range(Cells(lngZeile - 1, 1), Cells(lngZeile - 1, 3))) >= Application.CountA(Range(Cells(lngZeile, 1), Cells(lngZeile, 3))) Then
Rows(lngZeile).Delete
Else
Rows(lngZeile - 1).Delete
End If
End If
Next lngZeile
End Sub
<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/" onclick="window.open(this.href);return false"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

conax
01.04.2012, 13:20
Könntest du mir vielleicht kurz erklären was was bewirkt? (für eventuelle Anpassungen!)
Muss ich für dieses Script alle Kunden nach Kundennummer sortiert haben?
(1
2
3
4
5)

oder geht auch komplett durcheinander?

32578
3257539
83257
83
89395783

Beverly
01.04.2012, 13:50
Hi,

es wird eine Schleife durchlaufen von der letzten Zeile bis zu 2. Zeile. Dabei wird zuerst verglichen, ob der Eintrag der laufenden Zeile in Spalte A = Eintrag der vorhergehenden Zelle in Spalte A ist. Wenn ja, dann wird verglichen, ob die Anzahl an Einträgen in der vorhergehenden Zeile >= der Anzahl der Einträge der laufenden Zeile ist - wenn ja, dann wird die laufende Zeile gelöscht, andernfalls die vorhergehende.

Bedingung ist, dass nach Spalte A sortiert ist.

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/" onclick="window.open(this.href);return false"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

conax
01.04.2012, 13:53
Excel wirft leider auch verschiedene Errors aus!
(Code kann nicht im Haltemodus ausgeführt werden, bei End If gab es einen fehler, bei Next lngZeile auch)

Beverly
01.04.2012, 13:58
Hi,

dann hast du was falsch übernommen.

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/" onclick="window.open(this.href);return false"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

conax
01.04.2012, 21:47
Bei copy paste was falsch übernommen?

er meint bei "next" fehlt "for"
ich nutze 2010er

conax
01.04.2012, 22:23
Klappt doch wunderbar, gerade nochmal getestet

Ich bedanke mich!

conax
01.04.2012, 22:58
Kleine Frage noch:

Wie lasse ich A sortieren? (ganze Zeile mit zugehörigen Infos)

Hans 20 24
Zimt 10 24
Affe 23 10

->

Affe 23 10
Hans 20 24
Zimt 10 24

und nicht
Affe 20 24
Hans 10 24
Zimt 23 10

conax
01.04.2012, 23:17
Desweiteren sprenge ich mit 7 Millionen Zeilen Excels Rahmen, fündig geworden bin ich dann hier:

http://www.office-hilfe.com/support/showthread.php/14105-560-MB-gro%C3%9Fe-csv-Datei-%C3%B6ffnen

Sodass ich mit MS Access die Liste einlesen und in eine Excel Datei mit mehreren Blättern/Mappen exportiere

kann ich dein Script auch so anwenden, dass es dann über mehrere Arbeitsmappen greift? Oder, da es ja sortiert ist, muss ich das Script nur auf jeder Mappe manuell ausführen?

Beverly
01.04.2012, 23:50
Hi,

sorry, verstehe leider nicht, was du meinst. Beziehst du dich mit dem Begriff "Mappen" tatsächlich auf verschiedene Excel-Arbeitsmappen oder auf verschiedene Tabellenblätter innerhalb einer Excel-Arbeitsmappe? Und was hat das Ganze mit dem verlinkten Beitrag zu tun?

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/" onclick="window.open(this.href);return false"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

conax
02.04.2012, 00:55
Meine Liste umfasst 7 Millionen einträge, folglich kann ich sie nicht direkt in Excel einfügen.
Das verlinkte Thema hat mir insofern geholfen, dass ich weiß, dass ich es mit MS Access lösen kann, indem ich eine Exceldatei mit mehreren Tabellenblättern exportieren kann. (Zu je ca. 1 Mio einträgen.)

Das Script müsste ich ja dann nur über die aktuell angezeigte Tabelle laufen lassen, richtig?



Nun mehrere Fragen, die dann aber auch die letzten seien dürften:

Wie sortiere ich dann nun (in MS Access? Da da ja noch alles zusammen gelistet ist, die 7 Millionen) alphabetisch? (was für dein Script ja von nöten ist)
Brauche (logischerweise) die komplette Zeile mitsortiert, ergo Beispiel:

Olaf | 1 | 2
Hans | 24 | 10
Zimt | 4095 | 2

->

Hans | 24 | 10
Olaf | 1 | 2
Zimt | 4095 | 2




Last but not least:
liese sich auch folgendes realisieren? :

(wieder ein Placebo-Beispiel)
(Vorname | Nachname | Kundennummer | Geschlecht | Mail ) <- Format bleibt immer gleich

Hans | Müller | Kunde248 | nix | nix
Hans | Müller | Kunde248 | männlich | hansmueller@place.bo

gefiltert -> Hans | Müller | Kunde248 | männlich | hansmueller@place.bo

Olaf | Gasbriki | nix | männlich | olaf@place.bo
Olaf | Gasbriki | Kunde254 | nix | nix

gefiltert -> Olaf | Gasbriki | Kunde254 | männlich | olaf@place.bo

Beverly
02.04.2012, 07:14
Hi,

wie du in Access sortierst, kann ich dir leider nicht sagen - dazu gibt es ein extra Forum.

Wenn es mehr Spalten als in dem vorherigen Beispiel sein sollen, dann musst du in der Codezeile
If Application.CountA(Range(Cells(lngZeile - 1, 1), Cells(lngZeile - 1, 3))) >= Application.CountA(Range(Cells(lngZeile, 1), Cells(lngZeile, 3))) Then

die 3 durch die letzte Spaltennummer ersetzen, bis einschließlich derer geprüft werden soll - in deinem Beispiel 5. Außerdem ist in der Codezeile
If Cells(lngZeile, 1) = Cells(lngZeile - 1, 1) Then

die 1 durch die Spaltennummer zu ersetzen, in welcher verglichen werden soll - in deinem Beispiel wäre das die 3.

Den Code musst du auf jdem Tabellenblatt laufen lassen. Allerdings musst du anschließend von Hand prüfen, ob nicht Angaben zum selben Kunden auf 2 Tabellenblätter verteilt sind. Falls das der Fall ist, musst du diese nach dem Codedurchlauf dann auf ein Tabellenblatt bringen und eventuell von Hand zusammenfassen, da der Code nicht Tabellenübergreifend wirkt. Bedenke auch, dass der Codedurchlauf sehr lange dauern wird, denn es muss ja jede Zeile einzeln durchlaufen werden.

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/" onclick="window.open(this.href);return false"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

EarlFred
02.04.2012, 07:43
Hallo,

wenn ich davon lese,
a) dass es sich um größere Datenmengen handelt
und
b) dass diese bereits in Access vorliegen,

würde ich NIE auf die Idee kommen, diese nach Excel in verschiedene Dateien / Tabellen!! zu exportieren und dann ein zeilenweise arbeitendes Makro darüber "hoppeln" lassen. (Das klingt nach einer Idee vom 01.04. ;))
Du würdest sicher auch nie einen riesigen Sandhaufen mit einem Bagger in viele kleine Häuflein teilen, um diese dann mit der Schippe von Hand wegzuschaufeln, sondern stattdessen dafür gleich den Bagger nehmen, wenn er schon mal da steht.

Ich habe leider grad weder Access noch sonst ein Office zur Hand, um für das Szenario eine geeigente SQL-Anweisung auszutesten (und für "aus dem Kopf" reichen meine Erfahrungen noch nicht aus), aber versuch's doch mal bei den Access-Experten hier im Forum, die sollten Dir was im Nu "gezimmert" haben.

Grüße
EarlFred

conax
02.04.2012, 10:16
In Ordnung

Aber das Script vollbringt dennoch nicht folgendes:

liese sich auch folgendes realisieren? :

(wieder ein Placebo-Beispiel)
(Vorname | Nachname | Kundennummer | Geschlecht | Mail ) <- Format bleibt immer gleich

Hans | Müller | Kunde248 | nix | nix
Hans | Müller | Kunde248 | männlich | hansmueller@place.bo

gefiltert -> Hans | Müller | Kunde248 | männlich | hansmueller@place.bo

Olaf | Gasbriki | nix | männlich | olaf@place.bo
Olaf | Gasbriki | Kunde254 | nix | nix

gefiltert -> Olaf | Gasbriki | Kunde254 | männlich | olaf@place.bo

Beverly
02.04.2012, 10:51
Hi,

doch macht es schon, wenn du den Code entsprechend den Anweisungen in meinem vorherigen Betrag änderst. Schau es dir an:

Deine Ausgangsdaten

<b><em>Tabelle1</em></b><table border="1" cellspacing="0" cellpadding="0" style="border-color:#000000; border-width: 1px; font-size:11pt; background-color:#ffffff; padding-left:2pt; padding-right:2pt; "><colgroup><col style="font-weight:bold; width:40px;" /><col style="width:106px;" /><col style="width:106px;" /><col style="width:106px;" /><col style="width:106px;" /><col style="width:106px;" /></colgroup><tr style="background-color:#99CCFF; text-align:center; font-weight:bold; "><td>&nbsp;</td><td>A</td><td>B</td><td>C</td><td>D</td><td>E</td></tr><tr><td style="background-color:#99CCFF; text-align:center; font-weight:bold; ">1</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Hans</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Müller</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Kunde248</td><td style="color:#000000; background-color:#FFFFFF; ">&nbsp; </td><td style="color:#000000; background-color:#FFFFFF; ">&nbsp; </td></tr><tr><td style="background-color:#99CCFF; text-align:center; font-weight:bold; ">2</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Hans</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Müller</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Kunde248</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >männlich</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >hansmueller@place.bo</td></tr><tr><td style="background-color:#99CCFF; text-align:center; font-weight:bold; ">3</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Olaf</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Gasbriki</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Kunde254</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >männlich</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >olaf@place.bo</td></tr><tr><td style="background-color:#99CCFF; text-align:center; font-weight:bold; ">4</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Olaf</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Gasbriki</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Kunde254</td><td style="color:#000000; background-color:#FFFFFF; ">&nbsp; </td><td style="color:#000000; background-color:#FFFFFF; ">&nbsp; </td></tr></table><br/><a href="http://excel-inn.de/dateien/vba_beispiele/tabellenanzeige_in_html_addin.zip" onclick="window.open(this.href);return false">Tabellendarstellung in Foren Version 5.48</a><br/><br/>
Ergebnis nach Codedurchlauf

<b><em>Tabelle1</em></b><table border="1" cellspacing="0" cellpadding="0" style="border-color:#000000; border-width: 1px; font-size:11pt; background-color:#ffffff; padding-left:2pt; padding-right:2pt; "><colgroup><col style="font-weight:bold; width:40px;" /><col style="width:106px;" /><col style="width:106px;" /><col style="width:106px;" /><col style="width:106px;" /><col style="width:188px;" /></colgroup><tr style="background-color:#99CCFF; text-align:center; font-weight:bold; "><td>&nbsp;</td><td>A</td><td>B</td><td>C</td><td>D</td><td>E</td></tr><tr><td style="background-color:#99CCFF; text-align:center; font-weight:bold; ">1</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Hans</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Müller</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Kunde248</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >männlich</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >hansmueller@place.bo</td></tr><tr><td style="background-color:#99CCFF; text-align:center; font-weight:bold; ">2</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Olaf</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Gasbriki</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >Kunde254</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >männlich</td><td style="color:#000000; background-color:#FFFFFF; text-align:left; " >olaf@place.bo</td></tr></table><br/><a href="http://excel-inn.de/dateien/vba_beispiele/tabellenanzeige_in_html_addin.zip" onclick="window.open(this.href);return false">Tabellendarstellung in Foren Version 5.48</a><br/><br/>
Das entspricht genau dem, was du als Ergebnis vorgegeben hast. Bedingung ist jedoch, dass in der 2. Zeile zu Olaf Gasbriki Spalte C nicht leer ist sondern "Kunde254" drin steht. Das habe ich ergänzt, da ich annehme, dass du das beim Übertragen in den Beitrag nur vergessen hast.

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/" onclick="window.open(this.href);return false"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

conax
02.04.2012, 11:36
Nein, es geht ja eben um genau folgendes:

Olaf|Gasbriki|Kunde254|nix|nix
Olaf|Gasbriki|nix|männlich|olaf@place.bo

->

Olaf|Gasbriki|Kunde254|männlich|olaf@place.bo

Beverly
02.04.2012, 12:05
Hi,

wenn keine Kundennummer vorhanden ist, dann ist das eine andere Aufgabenstellung als in deinem Ausgangsbeitrag. Es wäre schon günstig, wenn die Aufgabe von Anfang an umfassend dargestellt wird, denn dann kann man sich bei der Beantwortung schon zu Beginn auf die tatsächlichen Bedingungen einstellen.
Sub Loeschen()
Dim lngZeile As Long
For lngZeile = 10 To 2 Step -1
If Cells(lngZeile, 1) = Cells(lngZeile - 1, 1) Then
If Cells(lngZeile, 2) = Cells(lngZeile - 1, 2) Then
If Application.CountA(Range(Cells(lngZeile - 1, 1), Cells(lngZeile - 1, 5))) >= Application.CountA(Range(Cells(lngZeile, 1), Cells(lngZeile, 5))) Then
Rows(lngZeile).Delete
Else
Rows(lngZeile - 1).Delete
End If
End If
End If
Next lngZeile
End Sub

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/" onclick="window.open(this.href);return false"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

conax
02.04.2012, 12:23
Ich bitte dies zu entschuldigen : )

Leider erhalte ich in einem kurzem Test

Olaf | Gasbriki | nix | 1 | 2
Olaf | Gasbriki | 1 | nix | nix
->
Olaf | Gasbriki | nix | 1 | 2

bzw.
Olaf | Gasbriki | 1 | nix | nix
Olaf | Gasbriki | nix | 1 | 2
-> Olaf | Gasbriki | nix | 1 | 2

Was mache ich falsch?
Habe deinen Code wie immer einfach kopiert

Beverly
02.04.2012, 12:49
Hi (zu Beginn eines Beitrages steht die Anrede, am besten mit einem Namen),


(hier folgt der Text des Beitrages)
und was soll das Ergebnis sein? Entsprechend deinem Eröffnungsbeitrag bleibt der Eintrag mit den meisten Daten erhalten.


(und zum Schluss eines Beitrages steht ein Gruß)

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/" onclick="window.open(this.href);return false"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

conax
02.04.2012, 12:51
Hi Beverly,

Olaf | Gasbriki | nix | 1 | 2
Olaf | Gasbriki | 1 | nix | nix

daraus soll

Olaf | Gasbriki | 1 | 1 | 2

werden.
Wenn also bei einem Doppeleintrag eine Info enthalten ist, welche in dem anderen Eintrag nicht enthalten ist, sollen diese Infos zusammengetragen werden, sodass keine verloren gehen.

Grüße,
Connor

Beverly
02.04.2012, 13:19
Hi Connor,

das ist nun aber wieder eine völlig andere Aufgabenstellung - logisch, dass der Code das gar nicht machen kann, denn darauf ist er nicht ausgelegt. Langsam komme ich mir - ehrlich gesagt - einfach an der Nase herumgeführt vor...

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/" onclick="window.open(this.href);return false"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

ebs17
02.04.2012, 13:58
@conax:

Eingangsfrage, auch bezugnehmend auf das gestrige Datum: Hast Du diese Aufgabe übertragen bekommen, weil Du dafür besonders geeignet bist, oder wurde diese Aufgabe für Dich ausgewählt, damit Du längerfristig beschäftigt bist?

Wer sich nämlich einer solchen Aufgabe ernsthaft nähert, wird sich als erstes einen Überblick verschaffen,
1) woher solche Daten kommen (oder schreibt das jemand von Hand zusammen)? Wenn solche Daten maschinell erzeugt werden, sollte man doch eine Duplikatsvermeidung an der Quelle verwenden (Müllvermeidung statt Müllverarbeitung ist auch in der EDV ein Prinzip!).
2) worin (welche Datei) diese Daten liegen und welche Struktur real vorliegt? Über willkürlich sich ändernde Dummy-Teildatensätze macht man sich nicht wirklich Gedanken, wenn man zielbewusst arbeitet.
3) welche Verarbeitungen über die Duplikatsbeseitigung hinaus vorgesehen sind und welche Anwendungen dafür geeignete Methoden bieten. Denn: Selbst wenn man mit Mühe die Daten in eine Excelmappe quetscht, könnte angesichts der Datenmenge das Verarbeiten recht langwierig sein.

liese sich auch folgendes realisieren?
Ja.
Einen konkreten Vorschlag würde man aber erst nach einer durchdachten und vollständigen Aufgabenbeschreibung erstellen, um Karins Empfindungen zu vermeiden.

conax
02.04.2012, 22:04
Die Eingangsfrage war anders, richtig, weshalb ich dann fragte, weil mir das eher zusagen würde, ob folgendes realisierbar wäre:



liese sich auch folgendes realisieren? :

(wieder ein Placebo-Beispiel)
(Vorname | Nachname | Kundennummer | Geschlecht | Mail ) <- Format bleibt immer gleich

Hans | Müller | Kunde248 | nix | nix
Hans | Müller | Kunde248 | männlich | hansmueller@place.bo

gefiltert -> Hans | Müller | Kunde248 | männlich | hansmueller@place.bo

Olaf | Gasbriki | nix | männlich | olaf@place.bo
Olaf | Gasbriki | Kunde254 | nix | nix

gefiltert -> Olaf | Gasbriki | Kunde254 | männlich | olaf@place.bo

--------


Hi Beverly,

Olaf | Gasbriki | nix | 1 | 2
Olaf | Gasbriki | 1 | nix | nix

daraus soll

Olaf | Gasbriki | 1 | 1 | 2

werden.
Wenn also bei einem Doppeleintrag eine Info enthalten ist, welche in dem anderen Eintrag nicht enthalten ist, sollen diese Infos zusammengetragen werden, sodass keine verloren gehen.

Entschuldige bitte, Beverly, dass das nicht von Anfang an so von mir erfragt wurde.

Über willkürlich sich ändernde Dummy-Teildatensätze macht man sich nicht wirklich Gedanken, wenn man zielbewusst arbeitet.
Wo ist das Problem "Dummy-Teildatensätze" zu beschreiben, wenn dies ausreicht um ein passendes VBA Script zu erzeugen? Es ist vollkommen ausreichend, wenn ich hier mit Olaf Gasbriki und Hans Meier als Beispiel arbeite um meine Frage zu verdeutlichen.

Grüße,
Connor

Beverly
03.04.2012, 07:56
Wo ist das Problem "Dummy-Teildatensätze" zu beschreiben, wenn dies ausreicht um ein passendes VBA Script zu erzeugen? Es ist vollkommen ausreichend, wenn ich hier mit Olaf Gasbriki und Hans Meier als Beispiel arbeite um meine Frage zu verdeutlichen.

Für dich mag das ausreichend sein, da du deine Arbeitsmappe kennst - für einen Außenstehenden jedoch nicht. Nicht jedes VBA-Konzept lässt sich auf jede Situation anwenden. Wenn du meinst, dass deine sich fortlaufend änderenden Beschreibungen ausreichend sind, dann sollte es dir ja auch leicht fallen, meinen geposteten Code daran anzupassen.

Für mich ist das Thema beendet.

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/" onclick="window.open(this.href);return false"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

conax
03.04.2012, 10:38
Fortlaufend ändernde Beschreibungen? Weil ich eine 2te Frage gestellt habe?
Wenn man mir nicht helfen kann, oder warum auch immer nicht will, dann kann man das auch klipp und klar sagen, als zu behaupten ich würde meine Fragen ständig abändern. Typisch Frau.

ebs17
03.04.2012, 15:53
Das ist eine Abfrage, vgl. SQL-Ansicht (http://www.ardiman.de/datenbanken/grundlagen/abfragen.html#SEC2):
SELECT
Vorname,
Nachname,
Max(Kundennummer) AS Kundennummer,
Max(Geschlecht) AS Geschlecht,
Max(Mail) AS Mail
FROM
Accesstabelle
GROUP BY
Vorname,
Nachname
Diese Abfrage erfüllt die Anforderungen, die durch die gegebene Beschreibung gestellt wurden. Ich kann mir aber gut vorstellen, dass 6 gezeigte Zeilen nicht repräsentativ für 7 Mio Zeilen stehen.
Probleme: Nachname und Vorname sind i.d.R. nicht ausreichend, um eine bestimmte Person eindeutig zu identifizieren. Was sollte passieren, wenn zwei oder mehr Zeilen in einem Feld erhaltenswerte, aber verschiedene Werte enthalten?

conax
03.04.2012, 22:51
Habe mir jetzt selbst was in Java geschrieben, was die Datenmenge bewältigt und alles so ausgibt, wie ich es möchte.

Danke für die Hilfe ebs17

Nur in Access muss ich mich jetzt ein wenig einwerkeln, da ich auf Anhieb noch keine simple Tabelle ala Excel zustande bekomme :-)

Grüße,
Connor