napisał: admin postów: 613
umieszczony: 26 kwietnia 2005 21:42
|
|
Oto moja propozycja,
Zakładam, ze wartość do przepisanai masz w komórce A1, a wpisujesz w drugim wierszu.
Sub podziel()
'Deklaracje
Dim strZaw As String
Dim vTablica As Variant
Dim i As Long, k As Long
'Odczytujemy zawartość komórki A1
strZaw = Range("A1").Value
'Rozbijamy do tablicy, a jako znak podziału stosujemy przecinek
vTablica = Split(strZaw, ",")
'Wpisujemy do drugiego wiersza, ale już do osobnych kolumn
k = 1
For i = LBound(vTablica) To UBound(vTablica)
Cells(2, k).Value = usun_cudzyslow(Trim(vTablica(i)))
k = k + 1
Next i
End Sub
Function usun_cudzyslow(strWyraz As String) As String
'A to funkcja usuwająca zbędne cudzysłowy
Dim i As Long
Dim strNoweSlowo As String, strZnak As String
For i = 1 To Len(strWyraz)
strZnak = Mid(strWyraz, i, 1)
If strZnak <> Chr(34) Then strNoweSlowo = strNoweSlowo & strZnak
Next i
usun_cudzyslow = strNoweSlowo
End Function |
|
napisał: MihAoo3k postów: 1
umieszczony: 26 kwietnia 2005 13:14
|
|
Mam taki problem..potrzebuje napisac makro, ktore by rozbilo dane z jednej komorki na kilka.
przykladowa zawartosc jednej komórki wyglada tak:
Item,"Country","Year","Production (Mt)","Imports (Mt)","Stock Change (Mt)","Exports (Mt)","Domestic Supply (Mt)","Feed (Mt)","Seed (Mt)","Food Manufacture (Mt)","Waste (Mt)","Other Uses (Mt)","Food (Mt)","Supply/Cap/Yr (Kg)","Cal/Cap/Day (Number)","Prot/Cap/Day (Gr)","Fat/Cap/Day (Gr)","Element"
chcialbym aby kazda z wartosci w " " byla w osobnej kolumnie. Czy moglby mi ktos pomoc z takim makrem?.. |
|
wstecz 1 dalej wszystkich stron: 1
|