Office: Preis finden

Helfe beim Thema Preis finden in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, ich brauche mal wieder einen Rat. Tips wie man aus einem Text eine Zahl heraus filtern kann gibt es unzählige im Net. Leider funktioniert... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Thorbln, 12. November 2009.

  1. Thorbln
    Thorbln Erfahrener User

    Preis finden


    Hallo,
    ich brauche mal wieder einen Rat.

    Tips wie man aus einem Text eine Zahl heraus filtern kann gibt es unzählige im Net. Leider funktioniert bei mir keiner davon.
    Vielleicht hat hier jemand einen Tip für mich wie ich aus einer Zelle die Text und Zahlen enthält, die Zahlen löschen und in die nachbarspalte schreiben kann. Macro oder VBA-Code währe super.

    Die Zahlen stehen zwar immer am Ende, können aber sowohl im Format ###,## als auch im Format #,# vorliegen.
     
  2. Beverly
    Beverly Erfahrener User
    Hi Thor,

    Code:
    Sub Extrahieren()
        Dim inZeichen As Integer
        For inZeichen = 1 To Len(Range("D1"))
            If Asc(Mid(Range("D1"), inZeichen, 1)) > 47 And Asc(Mid(Range("D1"), inZeichen, 1)) < 58 Then
                Range("E1") = Mid(Range("D1"), inZeichen) * 1
                Exit For
            End If
        Next inZeichen
    End Sub
    
    Bis später,
    Karin
     
  3. Exl121150 Erfahrener User
    Hallo,

    es funktioniert auch ohne VBA:
     ABCD
    5    
    6 Exl121150Exl121150
    7 Hybrid12,30Hybrid12,30
    8    
    ZelleFormel
    C6{=LINKS(B6;LÄNGE(B6)-ANZAHL(RECHTS(B6;SPALTE($1:$1))*1))}
    D6{=RECHTS(B6;ANZAHL(RECHTS(B6;SPALTE($1:$1))*1))}
    C7{=LINKS(B7;LÄNGE(B7)-ANZAHL(RECHTS(B7;SPALTE($1:$1))*1))}
    D7{=RECHTS(B7;ANZAHL(RECHTS(B7;SPALTE($1:$1))*1))}
    <table><tr><td>Achtung, Matrixformel enthalten!</td></tr><tr><td><span>Die geschweiften Klammern{} werden </span><span>nicht</span><span> eingegeben.</span></td></tr><tr><td><span>Verlassen Sie den Zelleneditor mit </span><span>Strg+Shift + Enter</span><span>, statt Enter alleine.</span></td></tr></table>[/parsehtml]
     
    Zuletzt von einem Moderator bearbeitet: 30. November 2020
    Exl121150, 12. November 2009
    #3
  4. Thorbln
    Thorbln Erfahrener User

    Preis finden

    Hallo Exl121150
    formel nutzt mir nichts da das ergebnis weiter kopiert und verarbeitet wird. Dabei kommt Chaos raus wenn ich es über Formeln mache. Das war mein ursprünglicher Versuch.

    Hallo Karin
    soweit OK.
    Jetzt müsste das ganze noch mit der Range A1:A500 funktionieren. Dort liegen die Daten bzw. sie werden nach dem scannen dort hin kopiert. So wie der code ist bleibt er bei der ersten Zeile stehen.
    außerdem währe es schön wenn der ermittelte Wert aus der Textzelle entfernt werden würde, wemm möglich inklusive aller Leerstellen die zwischen dem Text und der Zahlt stehen.
    Sorry wenn ich nerve aber VBA und ich, wir werden wohl nie ein Paar werden. Preis finden :(
     
  5. Beverly
    Beverly Erfahrener User
    Hi Thor,

    der Code war auch nur für eine Zelle ausgelegt, da aus deiner Fragestellung nicht hervorging, dass es sich um einen Bereich handelt.


    Code:
    Sub Extrahieren()
        Dim inZeichen As Integer
        Dim inZeile As Integer
        For inZeile = 1 To 500
            For inZeichen = 1 To Len(Cells(inZeile, 1))
                If Asc(Mid(Cells(inZeile, 1), inZeichen, 1)) > 47 And _
                    Asc(Mid(Cells(inZeile, 1), inZeichen, 1)) < 58 Then
                    Cells(inZeile, 2) = Mid(Cells(inZeile, 1), inZeichen) * 1
                    Cells(inZeile, 1) = Application.Substitute(Application.Substitute(Cells(inZeile, 1), _
                        CStr(Cells(inZeile, 2)), ""), " ", "")
                    Exit For
                End If
            Next inZeichen
        Next inZeile
    End Sub
    Bis später,
    Karin

    Übrigens: auch ein Formelergebnis kann man in feste Werte umwandeln indem man den Bereich kopiert, dann Bearbeiten -> Inhalte einfügen -> Werte.
     
  6. Thorbln
    Thorbln Erfahrener User
    Hallo Karin,.
    sorry dass es so lange gedauert hat.
    Nach der ersten Zeile kommt immer eine Fehlermeldung.
    Ich hänge eine Testdatei an. Darin ist ein Beispiel für mein Problem.
     
  7. Beverly
    Beverly Erfahrener User
    Hi Thor,

    es ist immer wichtig, die Aufgabenstellung richtig zu beschreiben - in deinem ersten Post war nicht die Rede davon, dass Zahlen auch zwischendurch auftreten können.

    Code:
    Private Sub CommandButton1_Click()
        Dim inZeichen As Integer
        Dim inZeile As Integer
        For inZeile = 1 To 19
            Cells(inZeile, 2) = Mid(Cells(inZeile, 1), InStrRev(Cells(inZeile, 1), " ") + 1) * 1
            Cells(inZeile, 1) = RTrim(Application.Substitute(Cells(inZeile, 1), _
                CStr(Cells(inZeile, 2)), ""))
        Next inZeile
    End Sub
    Bis später,
    Karin
     
  8. Thorbln
    Thorbln Erfahrener User

    Preis finden

    Hi Karin
    in dem Beispiel standen die Zahlen hinten. In anderen Fällen stehen auch hhinter den Zahlen noch Buchstaben. Das ist das Problem.
     
  9. Beverly
    Beverly Erfahrener User
    Hi Thor,

    ich habe nun schon viel Zeit in die Lösung deines Problems investiert, die eigentlich für die Katz war - dein Eröffnungsbeitrag:

    Wieviele Zahlen können überhaupt vorkommen? Welche Zahlen sollen denn nun ausgelesen werden - die die zwischendurch stehen oder die die hinten stehen oder alle?

    Bis später,
    Karin
     
  10. Thorbln
    Thorbln Erfahrener User
    Hi Karin
    Die Zahlen können 1-3 Stellen vor dem Komma haben. Da es sich um eingescannte Kassenbons handelt ist dort kein einheitliches Format verfügbar.
    Das einziege was immer gleich ist, sind die zwei Stellen hinter dem komma.
    LEERSTELLE - 1bis3 Ziffern - KOMMA - 2 Ziffern.
    Dahinter kommt bei einigen Firmen noch ein Kennbuchstabe für die Steuerklasse. Wenn das aber zu kompliziert wird, dann muss ich den anders heraus filtern.
    Wichtig ist nur dass der Preis heraus gezogen wird und in die Nachbarspalte geschrieben.
     
  11. schatzi Super-Moderator
    Hallo!

    Wenn das nun schlussendlich eine korrekte und vollständige Beschreibung deines Aufbaus ist, dann teste mal diesen Code:
    Code:
    Sub Preis()
    Dim Z As Range, i As Long, j As Long
    For Each Z In Range("A1:A3")
        i = -1: j = -1
        Do: i = i + 1
        Loop Until IsNumeric(Mid(Z, Len(Z) - i, 1))
        Do: j = j + 1
        Loop Until Mid(Z, Len(Z) - j - i, 1) = " "
        Z.Offset(0, 1) = 1 * Mid(Z, Len(Z) - j - i + 1, j)
    Next Z
    End Sub
     
  12. Beverly
    Beverly Erfahrener User
    Hi Thor,

    welches Format die auszulesenden Zahlen haben ist völlig nebensächlich (ob 1 oder 2 Stellen nach dem Komma) - das einzig Ausschlaggebende ist zu wissen, wie die gescannten Daten genau aussehen, also was für Kombinationen möglich sind. Da musst du schon mal alle vorkommenden Kombinationen angeben, andernfalls ist keine Hilfe möglich.

    Bis später,
    Karin
     
  13. Thorbln
    Thorbln Erfahrener User

    Preis finden

    Hallo schatzi,
    dein Code extrahiert die Zahlen, gibt mir dann aber einen Fehlermeldung raus:
    "ungültiger Prozeduraufruf oder ungültiges argument"

    Dabei markiert der Debugger folgende Zeile:

    Loop Until IsNumeric(Mid(Z, Len(Z) - i, 1))

    Hallo Karin,
    danke für deine Bemühungen. Präziser kann ich mein Problem leider nicht mehr beschreiben.
     
  14. schatzi Super-Moderator
    Hallo!

    Du schriebst:
    Mein Code sucht (hoffentlich)
    1. nach der ersten Zahl/Ziffer von rechts
    2. und sucht dann weiter (von rechts) nach der ersten weiteren LEERSTELLE.
    so dass
    3. der Teil zwischen diesen beiden Fundstellen ausgegeben wird.

    Diesen Prozess hat mein Code in all meinen Tests bestanden.
    Auch Karin's Code läuft unter den ursprünglichen Voraussetzungen, die sich aber leider von Post zu Post deinerseits verändert/erweitert/erneuert haben, weil sich mit jedem neuerlichem Post deinerseits neue grundsätzliche Vorraussetzungen ergeben haben.

    Ganz ehrlich? Das nervt!
    Entweder bist du geschickt genug, den Code für deine Ansprüche anzupassen,
    oder,
    du schilderst dein Problem von Anfang an so, daß du auch entsprechende Hilfe bekommen kannst!

    So, ich bin raus und weg und sonstwo...
     
  15. schatzi Super-Moderator
    Hallo nochmal!
    Möglicherweise könnte das Einfügen dieser Zeile helfen, um Fehler abzufangen, aber dadurch werden eben ALLE Fehler abgefangen;
    daher ist es ein zweischneidiges Schwert...
     
Thema:

Preis finden

Die Seite wird geladen...
  1. Preis finden - Similar Threads - Preis

  2. Preise nach Form berechnen

    in Microsoft Excel Hilfe
    Preise nach Form berechnen: Hallo zusammen, ich habe in der angefügten Datei eine Tabelle erstellt, welche nun folgende Funktionalität erfüllen soll: In Zeile F sollen einmal die Gesamtkosten für die jeweilige Farbe und...
  3. Preise zuordnen mit welcher Funktion ?

    in Microsoft Excel Hilfe
    Preise zuordnen mit welcher Funktion ?: Huhu ihr Lieben, ich hoffe jemand kann mir behilflich sein wie und mit welcher Funktion ich am besten aus einer Preisstaffel die Preise für die jeweiligen Packstücke zuordnen kann. Hier ein...
  4. Excel Tabelle mit Preise

    in Microsoft Excel Hilfe
    Excel Tabelle mit Preise: Guten Abend, Ich habe mir in Word die Arbeit für ein Fackelumzug für eine Feuerwehr gemacht jeden Preis bis 10 untereinander auszurechnen das man das beim Verkauf nicht mehr machen muss dies...
  5. Richtigen Preis aus Tabelle "ziehen"

    in Microsoft Excel Hilfe
    Richtigen Preis aus Tabelle "ziehen": Hallo und einen guten Start ins neue Jahr! Frisch aus dem Urlaub habe ich mich an eine neue Aufgabe begeben: Im einer Preistabelle gibt es pro Artikel einen Standardpreis und (theoretisch) n...
  6. Lieferantenliste nach Preisen und Lieferanten

    in Microsoft Access Hilfe
    Lieferantenliste nach Preisen und Lieferanten: Hallo, Ich komme demnächst in eine andere Abteilung und soll dort ein wenig "Aufräumen" :D Also kleine Firma wo ich noch zu den dreien mit den meisten Computerkenntnissen gehöre. Da gibt es...
  7. Preis aus Dropdown

    in Microsoft Excel Hilfe
    Preis aus Dropdown: Hallo zusammen In der Spalte A5 bis A100 stehen Artikel. In der Zelle B1 wähle ich mit einem Dropdown eine Version aus. Nun sollen die richtigen Preise zu den Jeweiligen Artikel eingetragen/geholt...
  8. Wertzuweisung in Abhängigkeit von Menge und Preis

    in Microsoft Excel Hilfe
    Wertzuweisung in Abhängigkeit von Menge und Preis: Hallo, ich hab folgendes Problem und hoffentlich könnt ihr mir dabei helfen. Ich möchte dass Excel in der Tabelle mir den Verkaufspreis in Abhängigkeit von Menge und Einkaufspreis ausgibt. Bei...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden