MS-Office-Forum

Zurück   MS-Office-Forum > Archive > Microsoft Access - Archiv > Microsoft Access - Archiv (2001)
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 06.03.2001, 10:40   #1
Konrad B
Standard Wie NeuNummerierung von DS per Aktualisierungsabfrage?

Hallo Forum,

vielleicht entsinnt sich noch jemand an die "guten alten Tage" der Basic-Programmierung: da verwendete man Zeilennummern in 10er Sprüngen. Nach dem Dawischenschieben von Zeile 15 und 16 konnte man neu durchnummerieren...

Genau das ist auch mein Problem in einer Tabelle mit Zählerfeld. Es mag mir nicht gelingen, ein vorhandenes Feld per Änderungsabfrage (notfalls auch per VBA) neu in 10er Schritten durchzunummerieren (Sortierungskriteritum alte Nummerierung).

Bin am Ende meines Lateins - Für Tips wäre ich sehr dankbar!

Gruß Konrad

 
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 06.03.2001, 20:48   #2
Nockenwelle
MOF Profi
MOF Profi
Standard

Hi,

sieht sehr nach copy und Paste aus was ich hier mache, aber ich musste letztens auch neue IDs erstellen.

z. B. kannst du dir auch eine gespeicherte Parameterabfrage erstellen, und diese ausführen.
z. B.:

PARAMETERS ADR_ID Long, ADR_ID_ORG Long;
INSERT INTO adresse ( adresse_id, name_1, name_2, strasse_1, hausnummer, staat, postleitzahl_str, ort_str_1, postfach, postleitzahl_pf, ort_pf_1 )
SELECT [ADR_ID] AS Ausdr1, adresse.name_1, adresse.name_2, adresse.strasse_1, adresse.hausnummer, adresse.staat, adresse.postleitzahl_str, adresse.ort_str_1, adresse.ort_str_2, adresse.postfach, adresse.postleitzahl_pf, adresse.ort_pf_1 FROM adresse
WHERE (((adresse.adresse_id)=[ADR_ID_ORG]));

(Ich weiss, diese Abfrage verweist in Quelle und Ziel auf die gleiche Tabelle, aber ich musste Datensätze dublizieren, und eine neue ID vergeben).

'Freien bereich Schaffen:
docmd.runsql "UPDATE asys_adresse SET adresse.adresse_id = [AdresseIDs]![ADRESSE_ID]+10000000;"


I=10
Set qdf = dbs.QueryDefs("erstelle neue Adressen")
do while not rst1.eof
qdf.Parameters![ADR_ID]= I
qdf.Parameters![ADR_ID_ORG]=rst2!rst2!ADR_ID
qdf.execute
I=I+10
docmd.runsql "delete from Adresse where ADR_ID=" & Rst2!ADR_ID &";"

loop


Vielleicht bin ich jetzt an einer Stelle durcheinander gekommen, aber des kriegst du als alter VBler schon hin:-).
Hießen die dinger zufällig PET?

Cu
Nockenwelle ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.03.2001, 15:23   #3
Konrad B
Standard

Hallo Danke für den Tip! Ich habe noch eine Weile gebastelt. Das Ergebnis meiner Bemühungen sieht nun folgendermaßen aus:

Code:

Private Sub duchnummerieren()

Dim DB As DAO.Database
Dim Select1 As String
Dim RS As DAO.Recordset
Dim neuzaehl As Integer

Set DB = CurrentDb()
Select1 = "SELECT tblMaterial.Reihenfolge FROM tblMaterial ORDER BY blMaterial.Reihenfolge;"
Set RS = DB.OpenRecordset(Select1, dbOpenDynaset)
neuzaehl = 0

Do Until RS.EOF
    zähler = zähler + 1
    RS.edit
    RS!Reihenfolge = (zähler * 10)
    RS.Update
    RS.MoveNext
Loop

RS.Close: Set RS = Nothing
DB.Close: Set DB = Nothing

End Sub
Gruß Konrad
 
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:16 Uhr.



Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.