Cześć,

Mam prośbę do fanów Excela.

W załączniku jest przykładowy plik.

W kolumnie kody są trzyliterowe ciągi znaków, po nich dwukropek i liczba. Ciągi są oddzielone przecinkami.

Chciałbym utworzyć regułę / funkcję, która będzie kopiować do kolumny obok wszystkie ciągi znaków, które mają liczbę większą niż 1 po dwukopku.

Dodatkowo chciałbym, żeby ciąg był zmieniany z formy np. XYZ:2 na 2x XYZ.

Bedę wdzięczny za pomoc.

tP

Post's attachments

przyklad.xlsx 8.32 kb, liczba pobrań: 5 (od 2017-12-04) 

Tylko zalogowani mogą pobierać załączniki.
Atari, Inc., 1512 Crossman Ave., PO. Box 61657, Sunnyvale, CA 94086.
Złym błędem jest cofać się do tyłu, gdy wieje zimnym chłodem.
Jest to najprawdziwsza prawda. (c) VC

2

Dodaj sobie taką funkcję:

Function pinkReplace(tekst)
    Dim j As Integer
    Dim element As Integer
    Dim outStr As String
    
    vTab = Split(tekst, ",")
        j = 0
        For element = LBound(vTab) To UBound(vTab)
            vTab(element) = Trim(vTab(element))
            tempTab = Split(vTab(element), ":")
            If tempTab(1) > 1 Then
                outStr = outStr & tempTab(1) & "x " & tempTab(0) & ", "
                j = j + 1
            End If
        Next element
        pinkReplace = Left(outStr, Len(outStr) - 2)
End Function

Kod nie jest najwyższych lotów (jak każdy mój), ale powinien robić robotę ;)

Użycie:

=pinkReplace(komórka)

Np.:

=pinkReplace(C1)
Czy możecie wyjaśnić, Stirlitz, dlaczego wasz służbowy adres stirlitz@rsha.gov.de ma aliasa justas@gru.su?
Nie czytam PM. Proszę używać e-mail.

3 Ostatnio edytowany przez thePink (2017-12-04 20:06:03)

Dzięki :)

będę testować na duuuużym pliku za parę dni.


tP

Atari, Inc., 1512 Crossman Ave., PO. Box 61657, Sunnyvale, CA 94086.
Złym błędem jest cofać się do tyłu, gdy wieje zimnym chłodem.
Jest to najprawdziwsza prawda. (c) VC