Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Verschiedene Spaltenwerte in neue Spalte anzeigen
zurück: Abfrage nur für bestimmte Datensätze weiter: Korrektes Format erstellen Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Gast



Verfasst am:
02. März 2007, 12:43
Rufname:

Verschiedene Spaltenwerte in neue Spalte anzeigen - Verschiedene Spaltenwerte in neue Spalte anzeigen

Nach oben
       Version: Office XP (2002)

Hallo Zusammen

Ich habe in einer Spalte verschiedene Werte wie z.B.

Zeile 1 = xx yyy 20 kkk op
Zeile 2 = xx yyy kkk op 20 ggg
Zeile 3 = 20 xx yyy kkk op

Nun möchte ich dass in einer neuen Spalte immer zuerst der Wert 20 und dann die nachstehenden 5 Zeichen angezeigt werden

Neue Spalte
Zeile 1 = 20 kkk
Zeile 2 = 20 ggg
Zeile 3 = 20 xx

Hat jemand eine Idee?

Herzlichen Dank
Gruess
Gschaftlhuaba
Access und Excel VBA Programmierer


Verfasst am:
02. März 2007, 19:36
Rufname:


AW: Verschiedene Spaltenwerte in neue Spalte anzeigen - AW: Verschiedene Spaltenwerte in neue Spalte anzeigen

Nach oben
       Version: Office XP (2002)

Füge einen Ausdruck in die Abfrage ein:
Code:
NEUE_SPALTE: [NAME_SPALTE1] & " " & [NAME_SPALTE2] & " " & [NAME_SPALTE3]

_________________
MfG
Gschaftlhuaba
VBA-Leu
VBA Script


Verfasst am:
02. März 2007, 20:29
Rufname:
Wohnort: 8810 Horgen /CH

AW: Verschiedene Spaltenwerte in neue Spalte anzeigen - AW: Verschiedene Spaltenwerte in neue Spalte anzeigen

Nach oben
       Version: Office XP (2002)

Glaube nicht, dass es so funktioniert?! Wink
Das Resultat sollte wie folgt in Spalte B aussehen:
Code:
          Spalte A               Spalte B
Zeile 1   xx yyy 20 kkk op       20 kkk
Zeile 2   xx yyy kkk op 20 ggg   20 ggg
Zeile 3   20 xx yyy kkk op       20 xx
Wie man sieht, wird immer der ab Wert 20 den Inhalt genommen, sprich es sollte zuerst ein bestimmter Wert lokalisiert werden und von da an in einer neuen Spalte anzeigen. Klar Shock wenn nicht, einfach nachfragen

Noch eine Idee? Idea Rolling Eyes
Nouba
nicht ganz unwissend :)


Verfasst am:
02. März 2007, 20:35
Rufname:
Wohnort: Berlin

AW: Verschiedene Spaltenwerte in neue Spalte anzeigen - AW: Verschiedene Spaltenwerte in neue Spalte anzeigen

Nach oben
       Version: Office XP (2002)

Hallo,

Zitat:
zuerst der Wert 20 und dann die nachstehenden 5 Zeichen
ist aber nicht deckungsgleich, mit dem angezeigten Wunschresultat. Mit einem Regulären Ausdruck sollte man aber das Wunschresultat erhalten können, wobei die Funktion GetMatch in einer Abfrage einsetzbar wäre.

Code:
Option Explicit

Sub Test()
  Dim vArray        As Variant
  Dim vElement      As Variant
 
  vArray = Array("xx yyy 20 kkk op", _
                 "xx yyy kkk op 20 ggg", _
                 "20 xx yyy kkk op")
  For Each vElement In vArray
    Debug.Print GetMatch(vElement)
  Next vElement
End Sub

Function GetMatch(Element)
  Dim m             As Object
  Const cstrMuster  As String = "20\s\w+"

  Set m = rxExec(Element, cstrMuster, "")
  If m.Count > 0 Then GetMatch = m(0)
End Function

Function rxExec(Text As Variant, Pattern As String, _
                Flags As String, Optional Destroy As Boolean = True)
  Static rx         As Object

  If Len(Text & "") > 0 Then
    If rx Is Nothing Then
      Set rx = CreateObject("VBScript.RegExp")
    End If
    rx.IgnoreCase = CBool(InStr(1, Flags, "i") > 0)
    rx.Global = CBool(InStr(1, Flags, "g") > 0)
    rx.Multiline = CBool(InStr(1, Flags, "m") > 0)
    rx.Pattern = Pattern
    Set rxExec = rx.Execute(Text)
    If Destroy Then
      Set rx = Nothing
    End If
  End If
End Function

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
VBA-Leu
VBA Script


Verfasst am:
02. März 2007, 21:00
Rufname:
Wohnort: 8810 Horgen /CH


AW: Verschiedene Spaltenwerte in neue Spalte anzeigen - AW: Verschiedene Spaltenwerte in neue Spalte anzeigen

Nach oben
       Version: Office XP (2002)

Besten Dank für die schnelle Antwort.
Ich kenne mich vor allem mit VBA-Excel gut aus und denke mich im VBA-Access ein wenig auszukennen.
Eines habe ich jedoch noch nie gemacht; wie kann ich in einer Abfrage ein VBA-Script einbauen? Embarassed
Nouba
nicht ganz unwissend :)


Verfasst am:
02. März 2007, 21:15
Rufname:
Wohnort: Berlin

AW: Verschiedene Spaltenwerte in neue Spalte anzeigen - AW: Verschiedene Spaltenwerte in neue Spalte anzeigen

Nach oben
       Version: Office XP (2002)

Hallo,

die beiden letzten Funktionen gehören in ein globales Modul. Die Funktion rxExec gibt ein MatchCollection-Objekt der RegExp-Bibliothek zurück, welches nicht direkt in einer Abfrage verwendet werden kann. Die Funktion GetMatch ist so angelegt, dass sie den ersten Treffer bzw. Null zurückliefert. Im Abfrageentwurf sollte in einer neuen Spalte in der Zeile Feld mit AliasName: GetMatch([TabellennameOderTabellenAlias].[Feldname]) gearbeitet werden können.

PS: Die Funktion Test habe ich nur zur Überprüfung der Funktion GetMatch angelegt und wird nicht benötigt.

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
VBA-Leu
VBA Script


Verfasst am:
02. März 2007, 21:28
Rufname:
Wohnort: 8810 Horgen /CH

AW: Verschiedene Spaltenwerte in neue Spalte anzeigen - AW: Verschiedene Spaltenwerte in neue Spalte anzeigen

Nach oben
       Version: Office XP (2002)

ich habe nun zwei Module angelegt

1.
Code:
Function GetMatch(Element As Variant)
    Dim m               As Object
    Const cstrMuster    As String = "20\s\w+"
   
    Set m = rxExec(Element, cstrMuster, "")
    If m.Count > 0 Then GetMatch = m(0)
End Function
2.
Code:
Function rxExec(Text As Variant, Pattern As String, _
                Flags As String, Optional Destroy As Boolean = True)
    Static rx         As Object
   
    If Len(Text & "") > 0 Then
        If rx Is Nothing Then
            Set rx = CreateObject("VBScript.RegExp")
        End If
        rx.IgnoreCase = CBool(InStr(1, Flags, "i") > 0)
        rx.Global = CBool(InStr(1, Flags, "g") > 0)
        rx.Multiline = CBool(InStr(1, Flags, "m") > 0)
        rx.Pattern = Pattern
        Set rxExec = rx.Execute(Text)
        If Destroy Then Set rx = Nothing
    End If
End Function
+ ich habe versucht in der Abfrage eine neue Spalte mit dem Wert
Code:
AliasName: GetMatch([Outgoing]![MESSAGE])
hier kommt ein ERROR:
Code:
Undefinierte Funktion 'GetMatch" in Ausdruck
Weisst Du wieso?
Nouba
nicht ganz unwissend :)


Verfasst am:
02. März 2007, 21:49
Rufname:
Wohnort: Berlin

AW: Verschiedene Spaltenwerte in neue Spalte anzeigen - AW: Verschiedene Spaltenwerte in neue Spalte anzeigen

Nach oben
       Version: Office XP (2002)

Hallo,

Du kannst beide Funktionen in einem globalen Modul ablegen. Wer hat etwas von einem ! geschrieben?

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Willi Wipp
Moderator


Verfasst am:
03. März 2007, 02:35
Rufname:
Wohnort: Raum Wiesbaden

Re: Verschiedene Spaltenwerte in neue Spalte anzeigen - Re: Verschiedene Spaltenwerte in neue Spalte anzeigen

Nach oben
       Version: Office XP (2002)

Hi VBA-Leu,

das Modul darf auch nicht wie die Funktionen heissen!

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
VBA-Leu
VBA Script


Verfasst am:
09. März 2007, 12:54
Rufname:
Wohnort: 8810 Horgen /CH


AW: Verschiedene Spaltenwerte in neue Spalte anzeigen - AW: Verschiedene Spaltenwerte in neue Spalte anzeigen

Nach oben
       Version: Office XP (2002)

hat ein wenig gedauert, aber dafür habe ich eine einfachere Lösung gefunden:
Code:
    Suchwert = InStr(1, Me!Spalte, "20", vbTextCompare)
    Neue_Spalte = Mid(Me!Spalte,  Suchwert, 5)

Idea
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: SQL-Abfrage mit Kriterien aus mehreren Feldern einer Spalte! 6 Casius 1651 31. Jan 2005, 00:47
Casius SQL-Abfrage mit Kriterien aus mehreren Feldern einer Spalte!
Keine neuen Beiträge Access Tabellen & Abfragen: Vergleich neue Daten mit alten Daten! 28 Sebowsky 3164 29. Jan 2005, 11:38
Sebowsky Vergleich neue Daten mit alten Daten!
Keine neuen Beiträge Access Tabellen & Abfragen: aus einer Spalte 2 machen??? 9 Maik_25 511 19. Jan 2005, 12:08
stpimi aus einer Spalte 2 machen???
Keine neuen Beiträge Access Tabellen & Abfragen: spalte dynamisch und in abhängigkeit vom wochtag füllen 3 doc77 812 10. Jan 2005, 13:32
lothi spalte dynamisch und in abhängigkeit vom wochtag füllen
Keine neuen Beiträge Access Tabellen & Abfragen: Anfügeabfrage für neue Datensätze 2 Gast 938 06. Jan 2005, 15:52
Gast Anfügeabfrage für neue Datensätze
Keine neuen Beiträge Access Tabellen & Abfragen: Anzeigen der Daten einer vorhandenen Tabelle in einer Abfrag 6 brauzer 830 02. Dez 2004, 13:28
brauzer Anzeigen der Daten einer vorhandenen Tabelle in einer Abfrag
Keine neuen Beiträge Access Tabellen & Abfragen: existierende Spalte durch aktualisieren mit punkten trennen 1 Gast 509 24. Nov 2004, 13:40
Skogafoss existierende Spalte durch aktualisieren mit punkten trennen
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage mit sum, max Wert und verhätnis summe/max anzeigen? 1 IV 2531 04. Nov 2004, 18:14
Skogafoss Abfrage mit sum, max Wert und verhätnis summe/max anzeigen?
Keine neuen Beiträge Access Tabellen & Abfragen: In Abfrage nachträglich neue Tabelle einfügen 2 Chris79 498 13. Okt 2004, 22:18
Gast In Abfrage nachträglich neue Tabelle einfügen
Keine neuen Beiträge Access Tabellen & Abfragen: Erster Wert einer Spalte der größer x ist 1 Matloh_ 1122 04. Okt 2004, 22:46
Skogafoss Erster Wert einer Spalte der größer x ist
Keine neuen Beiträge Access Tabellen & Abfragen: sql neue tabelle erstellen 3 Gast 1232 19. Jul 2004, 23:09
lothi sql neue tabelle erstellen
Keine neuen Beiträge Access Tabellen & Abfragen: abfrage über ganze spalte? 1 Rob 486 07. Mai 2004, 15:03
Willi Wipp abfrage über ganze spalte?
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Project