Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo,

also ich habe folgendes Problem :

Ich habe eine Tabelle mit rund 2000 Datensätzen, die neben einer Namensspalte auch ein wenig Zahlenmaterial in 3 weitern Spalten enhält.

Soweit so gut ...

Ich möchte nun in weiteren 3 Spalten den Rang ermitteln und Speichern.

Ok das war mehr als unverständlich also ein Beispiel :

In Spalte 2 steht beispielsweise die Artikelanzahl. Und nun möchte ich den Anbietern eine eine Rangnummer geben, also er ist der mit den meisten Artikel, der ist der zweite usw.

Wie gesagt es sind insgesamt drei Spalten die einen Rang erahlet sollen.

Mein eigentliches Problem ist die Zeit, denn mein Lösung braucht knapp 60 Sekunden zu Berechnung, da die 2000 jeweils mit den restlichen 1999 vergleichen, da kann man sich den Aufwand ja in etwas ausmalen.

Kennt jemand eine schnelle Lösung.

Vielen Dank.

Lies dir die Tabelle am besten schon sortiert in ein Recordset ein ("Select * from bla order by artikelanzahl"), und gehe dann alle Sätze durch, wobei du mitzählst. Falls doppelte Werte vorkommen können, die den gleichen Rang bekommen müssen, wird es komplizierter.

Wahrscheinlich hilft dir das Beispiel "frmHochsprung" in Klaus Oberdalhoffs knowhow.mdb, die du dir unter Freeaccess runterladen kannst.

hth

Reinhold

Hallo,

im Endeffekt laeuft das auf die Sortierung Deiner Tabelle nach einem bestimmten Feld hinaus. Der von Dir gewaehlte Ansatz ist mit Abstand der ineffizienteste. Warum nimmst nicht einen Quicksort, um die Tabelle zu sortieren. Das sollte sich auch Problemlos in Basic umsetzen lassen.

Nic

Hallo,

und danke erstmal ...

@ Rehinhold: Sowas hab ich mir heute auch zusammengebastelt, das Probelm ist nur, dass ich diese Rangnummern für 3 verschiedene Kriterien brauch, so dass ich das ganze 3 mal machen múss bzw. ich mach ne nette Verschachtelung. (was es wohl auch werden wird)

@Nic_Power : Ineffizientm ... ja aber es funktioniert und Quicksort kann ich nicht nehmen, a ich erstens 3 verschiedene Rangnummern brauch und zweitens Quicksort mir zwar die Liste(Tabelle) sortiert aber mir weder wirkliche Rangnummern also Zahlen liefert und es doppelten oder gleichen Rängen auch nicht weiter hilft. Das heißt nach der Sortierung fang ich nochmal an und geh die Tabelle von oben bis unten durch und schreib ne Nummer rein ... wirklich schönist das auch nicht.

... trotzdem vielen Dank.

Ich nehm mal an, du arbeitest mit Access.

In dem Fall würde ich den Rang nicht in die Tabelle aufnehmen, da der Rang für alle Datensätze geändert werden muss, wenn ein Datensatz geändert wird.

Statt dessen, für jeden Rang eine Abfrage erstellen.

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.