Excel – Usuwanie podwojnych wartosci w komorce ?

Witam,

Mam pytanie, czy da rade za pomoca formuly ewentualnie innym sposobem usuniecie z komorki powtorzonych wartosci np.:

"dom, kot, pies, dom, mama, pies, tata"

zeby wynik formuly byl jak ponizej:

"dom, kot, pies, mama, tata"

Pozdrawiam

Odpowiedzi: 8

wszystko gra :D

jestes wielki :!:
sigma
Dodano
08.04.2006 13:19:43
Witaj ponownie.

Napisaleś w pierwszej wypowiedzi, źe potrzebujesz formuły.
Czyli np. w A1 masz tekst dom, kot, pies, dom, mama, pies, tata
do A2 wpisujesz formułę =UniqList( A1)
i wyświetli sie w niej dom,kot,pies,mama,tata

Czyli, tak jak wyźej pisałem, funkcji uźywasz jak zwykłej funkcji excela.
ohcyR
Dodano
08.04.2006 02:52:33
jeszcze raz dziekowa,

Mam jeszcze jedno pytanko, czy da rade zrobic tak, zeby slowa byly dodawane do komorki a nie na wyskakujacym okienku:)
sigma
Dodano
08.04.2006 01:11:38
Witaj.

Wyrzuć wszystko z modułu (ewentualnie Option Explicit moźe pozostać) i wklej tam moją funkcję.
Funkcji uźywaj w arkuszu. Uruchamianie jej (F5) w edytorze nie ma sensu; funkcja się nie uruchomi.

EDIT
Funkcję moźesz testowac w edytorze przy pmocy makra:
Sub test()
Dim tekst As String
tekst = "dom, kot, pies, dom, mama, pies, tata"
MsgBox tekst & vbNewLine & UniqList(tekst)
End Sub
ohcyR
Dodano
07.04.2006 02:10:26
Czesc,

Dzieki za porade, ale mam maly problem. Wchodze do Microsoft Visual Basic ( Alt+F11) , nastepnie dodaje nowy modul. Po wcisnieciu Run ( F5 ) tworze nowe makro i wklejam kod. W momencie uruchomienia wyskakuje Compile Error: Expected End Sub, a na koncu kodu znajduje sie End Sub

Co zrobic?
sigma
Dodano
07.04.2006 02:03:22
Witaj.

Wbrew pozorom nie jest to takie proste. Nie potrafię zrobić tego przy pomocy samych formuł.

Proponuję funkcję uźytkownika.
Kod funkcji naleźy wkopiować w edytorze VBA (Ctrl+F11 otwiera edytor) do modułu ogólnego (module1) tego skoroszytu (lub skoroszytu makr osobistych personal.xls). Moźna ją uźywać jak kaźdą funkcję excela.

Function UniqList(tekst As String) As String
Dim A, e
Dim zbior As New Collection
Dim i As Integer
Dim w As String

'usuń spacje za separatorem
tekst = WorksheetFunction.Substitute(tekst, ", ", ",")
'wpisz elementy do tablicy
A = Split(tekst, ",", , vbTextCompare)
'utwórz zbiór unikalnych elementów
On Error Resume Next
For i = LBound(A) To UBound(A)
zbior.Add Item:=A(i), key:=A(i)
Next i
On Error GoTo 0
'przepisz zbiór do stringa
w = ""
For Each e In zbior
If w = "" Then
w = e
Else
w = w & ", " & e
End If
Next e
UniqList = w
End Function
ohcyR
Dodano
31.03.2006 14:55:57
Czyli nie ma takiej mozliwosci :cry:

A czy istnieje mozliwosc zrobienia tego przy pomocy formatowania warunkowego, ze np. powtorzone wartosci zostana pogrubione :?:
sigma
Dodano
31.03.2006 14:10:27
:?: :?: :?:
sigma
Dodano
31.03.2006 00:03:14
sigma
Dodano:
30.03.2006 21:53:34
Komentarzy:
8
Strona 1 / 1