Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Feldinhalt aufteilen, z.B. Straße+Hausnummer
zurück: Nachschlagfelder aus allen Tabellen entfernen weiter: Mausrad im Formular deaktivieren!!! Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Tutorial Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Ludger
Access Hobbyist


Verfasst am:
01. Apr 2004, 15:11
Rufname:

Feldinhalt aufteilen, z.B. Straße+Hausnummer - Feldinhalt aufteilen, z.B. Straße+Hausnummer

Nach oben
       

Ein Problem, das immer mal wieder auftaucht, ist das Trennen von Straße und Hausnummer. Dazu habe ich die folgenden Funktionen geschrieben.
Damit lassen sich Straßen und Hausnummern trennen, die die verschiedensten Formate haben (z.B. Straße 1, Straße 1a, Straße 1-3, 4. Straße 5a-e usw).
Code:
Option Compare Database
Option Explicit

Public Function PosHsNrInStrasse(Strasse As String) As Integer
    Dim Zaehler     As Integer
    Dim Laenge      As Integer
    Dim X           As String
    Dim Ergebnis    As String
   
    Laenge = Len(Strasse)
    PosHsNrInStrasse = 0
'von rechts nach links durch Strassennamen gehen
'bis auf die 3 linken Zeichen damit Strassen, die mit Zahl beginnen
'(z.B. 3. Terwestenweg) nicht als Hausnummer erkannt werden
    For Zaehler = Laenge To 3 Step -1
        X = Mid(Strasse, Zaehler, 1)             'aktuell zu prüfendes Zeichen
        If IsNumeric(X) Then                 'prüfen, ob Zeichen eine Zahl ist
            PosHsNrInStrasse = InStr(Strasse, X)            'Position der Zahl
        End If
    Next
End Function

Public Function HsNr(Strasse As String) As String
    Dim pos     As Integer
    Dim Laenge  As Integer
   
    pos = PosHsNrInStrasse(Strasse)
    Laenge = Len(Strasse)
    If pos > 0 Then
        HsNr = Right(Strasse, Laenge - pos + 1)
      Else
        HsNr = ""
    End If
   
End Function

Public Function StrName(Strasse As String) As String
    Dim pos     As Integer
    Dim Laenge  As Integer
   
    pos = PosHsNrInStrasse(Strasse)
    Laenge = Len(Strasse)
    If pos > 0 Then
'Trim: führende und nachgestellte Leerzeichen entfernen
        StrName = Trim(Left(Strasse, pos - 1))
      Else
        StrName = Strasse
    End If
   
End Function

Ludger


Zuletzt bearbeitet von Ludger am 05. März 2007, 16:13, insgesamt einmal bearbeitet
Willi Wipp
Moderator


Verfasst am:
01. Apr 2004, 17:42
Rufname:
Wohnort: Raum Wiesbaden


Re: Feldinhalt aufteilen, z.B. Straße+Hausnummer - Re: Feldinhalt aufteilen, z.B. Straße+Hausnummer

Nach oben
       

Hi Ludger, sehr schoene Arbeit, Klasse Exclamation

{Dieser Beitrag nimmt das Thema aus den unbeantworteten Themen heraus}
Dennis79
Try&Error-Azubi


Verfasst am:
03. Jun 2005, 12:41
Rufname:

AW: Feldinhalt aufteilen, z.B. Straße+Hausnummer - AW: Feldinhalt aufteilen, z.B. Straße+Hausnummer

Nach oben
       

Hi zusammen,

kann mir mal jemand den Sinn erklären, warum
einige Firmen bei Adressdaten die Straßenangabe in Straße und Hausnummer aufteilen ?

Was bringt das ? Ist das nicht ein überflüssiges Feld ?

Aber gut zu wissen, dass es bereits eine Funktion dafür gibt Smile

Gruß
Dennis

_________________
"Kaum macht man's richtig, schon klappt's!"
Tom2002
Der einzig Wahre Leuchtturm - Pilsum


Verfasst am:
06. Jun 2005, 18:41
Rufname:
Wohnort: Düsseldorf

AW: Feldinhalt aufteilen, z.B. Straße+Hausnummer - AW: Feldinhalt aufteilen, z.B. Straße+Hausnummer

Nach oben
       

hi,
so könnte es auch gehen:
Code:
Public Function fnc_GetZiffern(ByVal mywert As String) As String
    Dim i   As Integer
    Dim x   As String
   
    If Len(mywert) < 1 Or IsNull(mywert) = True Then
        fnc_GetZiffern = ""
        Exit Function
    End If
    For i = 1 To Len(mywert)
        x = Mid$(mywert, i, 1)
        If IsNumeric(x) Then
            fnc_GetZiffern = fnc_GetZiffern & x
        End If
    Next i
End Function

ciao

tom

_________________
Win7, Win2008 R2, Office 2010 Prof

Wer mit Fortuna Düsseldorf groß geworden ist, der fürchtet sich auch vor Access nicht.
Die Nutzlosigkeit des Daseins anzuerkennen heisst, Fortuna-Fan zu sein.
TommyK
Im Profil kannst Du frei den Rang ändern


Verfasst am:
06. Jun 2005, 18:51
Rufname:
Wohnort: Sachsen

AW: Feldinhalt aufteilen, z.B. Straße+Hausnummer - AW: Feldinhalt aufteilen, z.B. Straße+Hausnummer

Nach oben
       

Hallo,

wir haben uns auch an anderer Stelle schon mal damit beschäftigt.
Wenn es jemanden interessiert, hier geht es zur Lösung samt Bsp-DB:
Nachträgliches Trennen von Straße und Hausnummer

_________________
Gruß Tommy
lothi
c#, .Net


Verfasst am:
01. Sep 2005, 10:18
Rufname:
Wohnort: Birgisch

AW: Feldinhalt aufteilen, z.B. Straße+Hausnummer - AW: Feldinhalt aufteilen, z.B. Straße+Hausnummer

Nach oben
       

Hallo Zusammen

Bei Fragen und Problemen zu diesem Tipp: Nachgefragt: Feldinhalt aufteilen, z.B. Straße+Hausnummer

_________________
Gruss Lothi, der Bastler
Feedback ist die beste Möglichkeit mir zu sagen ob die Antwort geholfen hat!
AC2002, WinXP, Office XP
Dalmatinchen
look into my eyes ...


Verfasst am:
26. Sep 2005, 10:22
Rufname:
Wohnort: Steiermark/Österreich

korrekte Hausnummernsortierung - korrekte Hausnummernsortierung

Nach oben
       

Hallo an alle!

Ich stand vor ein paar Wochen vor dem Problem, Hausnummern korrekt zu sortieren. Sobald ein Buchstabe oder Sonderzeichen mitspielt, ist es mit einer schönen Sortierung vorüber.

Wenn das Hausnummern-Feld als Text definiert ist, sortiert Access nach der Textmethode ... sprich: 1, 10, 11, 2, 20, 3, 4 etc.

Sinnvoll war es in meiner Datenbank, da die Firma, in der ich arbeite, hauptsächlich Kunden aus der eigenen und den benachbarten Regionen umfasst und ich eine Kundenliste nach Straßen und Hausnummern sortiert erstellen wollte.

Deshalb hier eine einfache Lösung des Problems:

Zuerst folgenden Code in ein Modul einfügen:
Code:
Public Function fnc_Hausnummern(FeldName As String) As Long
    'Definition der Variablen
    Dim Letter  As String
    Dim NrNeu   As Long
    Dim i       As Integer
   
    'Startwerte setzen
    Letter = ""
    NrNeu = 0
    'Schleife starten
    For i = 1 To Len(FeldName)
        'einzelnes Zeichen herausschneiden
        Letter = Mid(FeldName, i, 1)
        'überprüfen, ob es sich um eine Zahl handelt
        If IsNumeric(Letter) Then
            'bei einer Zahl den reinen Zahlenteil neu zusammensetzen
            NrNeu = NrNeu & Letter
          Else
            'bei einem anderen Zeichen Schleife beenden
            Exit For
        End If
    Next i
    'neu erstellten Wert übergeben
    fnc_Hausnummern = NrNeu
End Function
Dann in einer neuen Abfrage zwei neue Spalten erzeugen und reinschreiben:

... in die 1. Spalte (reiner Zahlenteil):
Code:
=Wenn([Feldname] Ist Nicht Null; fnc_Hausnummern([Feldname]); 0)
... in die 2. Spalte (Abschnitt nach dem reinen Zahlenteil):
Code:
=Wenn([Feldname] Ist Nicht Null; Rechts([Feldname]; Länge([Feldname])-Länge(fnc_Hausnummern([Feldname]))); "")
Beide Spalten aufsteigend sortieren und ausblenden. Zuvor kann bei Bedarf auch die Spalte "Straße" sortiert werden.

LG Dalmatinchen

_________________
FEEDBACK nützt jedem!
+++ Auf meiner Homepage findet Ihr zahlreiche Access-Beispiele als Download mit Erklärung! +++


Zuletzt bearbeitet von Dalmatinchen am 19. Nov 2005, 13:19, insgesamt einmal bearbeitet
Willi Wipp
Moderator


Verfasst am:
17. Okt 2006, 12:24
Rufname:
Wohnort: Raum Wiesbaden


Re: Feldinhalt aufteilen, z.B. Straße+Hausnummer - Re: Feldinhalt aufteilen, z.B. Straße+Hausnummer

Nach oben
       

Hi Folks,

weitere sehr interessante Informationen von Nouba zu diesem Thema
findet Ihr im Thema Hausnummer von Straße trennen ?

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Datenmodellierung, Tabelle aufteilen? <- Jetzt mit Bild 4 Downtown09 910 03. Dez 2009, 11:53
Downtown09 Datenmodellierung, Tabelle aufteilen? <- Jetzt mit Bild
Keine neuen Beiträge Access Tabellen & Abfragen: Einige Fragen z.B. Eingabe einer ArtNo und Anzeigen 1 IocusDiabolo 204 13. Nov 2009, 17:54
KlausMz Einige Fragen z.B. Eingabe einer ArtNo und Anzeigen
Keine neuen Beiträge Access Tabellen & Abfragen: Feld aufteilen in DB für weitere Ausw. in Pivot 6 brenn-holz-king 398 12. Nov 2009, 14:12
brenn-holz-king Feld aufteilen in DB für weitere Ausw. in Pivot
Keine neuen Beiträge Access Tabellen & Abfragen: Feldinhalt ein-/ausblenden (wenn dann sonst Fkt in Abfrage) 13 Riza 2537 15. Okt 2009, 17:33
Riza Feldinhalt ein-/ausblenden (wenn dann sonst Fkt in Abfrage)
Keine neuen Beiträge Access Tabellen & Abfragen: Abfragekriterium über Formular steuern z.B. >0;<0;< 6 tigerentep 612 06. Sep 2009, 21:07
tigerentep Abfragekriterium über Formular steuern z.B. >0;<0;<
Keine neuen Beiträge Access Tabellen & Abfragen: Kriterium entspricht Feldinhalt 5 DiRRki 1005 12. Jul 2009, 12:53
derArb Kriterium entspricht Feldinhalt
Keine neuen Beiträge Access Tabellen & Abfragen: Zelleninhalt aufteilen auf mehrere Zellen 3 schmitty 1421 16. Jun 2009, 18:48
KlausMz Zelleninhalt aufteilen auf mehrere Zellen
Keine neuen Beiträge Access Tabellen & Abfragen: Feldinhalt aus anderen Feldern zusammensetzen 17 CRTobi 2735 15. Jan 2009, 18:39
CRTobi Feldinhalt aus anderen Feldern zusammensetzen
Keine neuen Beiträge Access Tabellen & Abfragen: Feldinhalt nur Anzeigen wenn die Bedingung stimmt 0 CyberKater 900 09. Dez 2008, 16:46
CyberKater Feldinhalt nur Anzeigen wenn die Bedingung stimmt
Keine neuen Beiträge Access Tabellen & Abfragen: Tabelleninhalt aufteilen 9 pho 709 29. Mai 2008, 20:04
pho Tabelleninhalt aufteilen
Keine neuen Beiträge Access Tabellen & Abfragen: Betrag jeweils in ein Vor- und Nachkomma Feld aufteilen 34 ACP 3640 07. März 2008, 15:55
ACP Betrag jeweils in ein Vor- und Nachkomma Feld aufteilen
Keine neuen Beiträge Access Tabellen & Abfragen: Feldinhalt beim ersten Leerzeichen von RECHTS trennen 16 Job100 5534 11. Okt 2007, 08:46
Job100 Feldinhalt beim ersten Leerzeichen von RECHTS trennen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: PHP JavaScript