• Zapisz się do newslettera, aby otrzymywać powiadomienia o nowościach na blogu
    Zapisując się, wyrażasz zgodę na przesyłanie Ci informacji o nowościach na tym blogu. Zgodę możesz w każdej chwili wycofać (szczegóły).

Wyodrębnianie gramatury produktów z ich nazwy, czyli liczba z tekstu

Czyli wyodrębniania liczby z tekstu za pomocą funkcji w VBA

W dzisiejszym wpisie sytuacja, której nie życzę nikomu.Sytuacja, która jednak się zdarza i to jak się okazuje często… Najlepiej zobrazuje to screen poniżej:

Formatka

I chodzi oczywiście o wyciągnięcie gramatury z nazwy produktu. Jest wiele fajnych metod na wyciąganie liczb z tekstu, jednak ta sytuacja jest wyjątkowo wredna, ponieważ te liczby są różnej długości, w różnych miejscach w tekście, są często dziesiętne, a nawet jak są całkowite, to zapisywane np. tak: 1,0 zamiast po prostu 1. Próbowałam wielu sposobów na ten przypadek, ale po wielu nieprzespanych nocach stwierdziłam, że jednak VBA będzie tutaj najlepszym wyjściem. Zawsze staram się unikać funkcji tworzonych w VBA, ponieważ są wolniejsze, muszą być przechowywane w pliku z rozszerzeniem .xlsm lub .xlsb itp. Jednak tutaj stwierdziłam, że to najlepsze wyjście.

Czytaj dalej

Film: Import liczb do systemu z użyciem funkcji TEKST

 

Film powstał w odpowiedzi na pytanie Piotra, które brzmiało tak:

Otrzymujemy listę ładunkową w formacie jak w załączniku , problem powoduje zapis ciężarów kontenerów (kolumna weight). Program ładunkowy przyjmuje do obliczeń tylko zapis  10 256.000 zamiast 10256 jak jest na listach.

Mimo, że w Excelu sformatujemy komórkę tak, jak nam się podoba, to wartość tej komórki nadal będzie taka, jak Excel tego chce (a my nie!). Na co dzień nie sprawia nam to problemu, jednak gdy chcemy takie dane zaimportować do systemu – często chce on od nas,aby liczby było odpowiednio zapisane. Właśnie tak, jak my sformatujemy komórkę. Problem w tym, że formatowanie komórki nie wystarcza… Tu z pomocą przychodzi nam funkcja TEKST, która umie wpisać do komórki dokładnie taką wartość, jaki nadaliśmy format. To właśnie pokazuję w tym filmie, posiłkując się dodatkowo funkcją PODSTAW.

Oto film, w którym pokazuję rozwiązanie problemu:

Czytaj dalej