Dear bu Guru STDEV(i),
 
Memang tabel sudah sesuai keinginan sendiri.....
Tapi ....... rumusnya itu lho ...... puuuuuuuanjang buuuuuuanget ......
Terima kasih atas solusi alternative nya.
Jangan sering sering menggunakan ^_~ nanti mbak Titi Kamal marah ........
 
Regards
Herry Sutjipto

From: STDEV(i) <[email protected]>
To: [email protected]
Sent: Saturday, April 30, 2011 7:12 AM
Subject: Re: [belajar-excel] Mengubah text dengan delimeter koma (,) menjadi 
angka dalam empat kolom


  
Yg menjadi masalah sebenarnya apanya ya ?? (he he ketinggalan pembicaraan 
nih..) 


Sekilas saya lihat tabel pak Herry sudah seperti yg diinginkan sendiri.

Seandainya masalahnya hanya Text-Formula = kepanjangan, mungkin dapat diganti 
saja dengan UDF; sehingga nantinya sintaks rumusnya cukup seperti ini
dijelaskan di bawah ini

--1--
Kita anggap data yg ada di kholom pertama (sebagai input) 
Kita anggap data keluarannya adalah 5 data  (dalam dua versi)
Kita anggap 5 data itu ada indexnya ( 1 sampai 5) ( parameter Index)
Kita anggap keluaran (output) yg diinginkan ada dua "Macem" / dua versi 
  yaitu seperti yg ada di tabel kolom D:G dan tabel kolom I:L
Untuk membedakan, keluaran yg mana y gdikehendaki, kita ciptakan parameter UNIT
  jika Unit = "MM" atau "mm";  maka  outputnya adalah versi 1 (seperti tabel 
D:G )
  jika Unit = "M" atau "m";  maka  outputnya adalah versi 2 (seperti tabel I:L 
) 

--2--
Rumusnya
bentuk formal (sintaks) nya  
=KonversiX(DataYgDirujuk,Unit,Index)
argument#1 = string, argument#2 = string, argument#3 bilangan asli  

rumus dalm bentuk nyata
=KonversiX($B6,"mm",2)
menghasilkan  data kedua  versi 1 (Unit "mm")

=KonversiX($B6,"M",4)
menghasilkan  data keempat  versi 2 (unit "M") 

Jika 5 nomor Index (1 a/d 5) sudah ditulis di cell berjajar sebaris, maka kita 
dapat 
merujuknya , agar pembentukan Tabel Utuh (5 kolom) hanya perlu 1(satu) Rumus 
Universal
sbb

=KonversiX($B6,"m",J$5)
tinggal mengkopy ke cells kanan dan bawahnya

komment siti sendiri
UDF itu terlalu sembrono, karena menganggap 
** setting symbol Pemisah Argument harus "," koma
** setting symbol Pemisah Desimal  harus "." (TITIK)
** setting symbol Pemisah Pertengkaran harus  ^_~ (TITIK KAMAL)


' ----- sekrip / vba code --------
Function KonversiX(S As String, Unit As String, Index As Integer)
   ' siti Vi ** 8 Apr 2011
   ' milis belajar-excel; case
   ' http://tech.groups.yahoo.com/group/belajar-excel/message/9936
   '---------------------------------------------------
   Dim Dvsr As Integer, i As Integer, U As String
   Dim ArrDat, ArrHas() As Double
   
   S = Replace(Replace(S, ",", "\"), ".", "")
   ArrDat = Split(S, "\"):  U = LCase(Unit)
   ReDim ArrHas(1 To UBound(ArrDat))
   If U = "mm" Then Dvsr = 1
   If U = "m" Then Dvsr = 1000
   ' jika tetap mengunakan ArrDat, tidak dapat di-konversi menjadi Numbers   
   ArrHas(1) = Val(ArrDat(0))
   ArrHas(2) = Val(ArrDat(1)) / Dvsr
   ArrHas(3) = Val(ArrDat(2)) / Dvsr
   ArrHas(4) = Val(ArrDat(3)) / Dvsr
   
   KonversiX = ArrDat(Index - 1)
   If Index <= UBound(ArrDat) Then KonversiX = ArrHas(Index)

End Function
'------------



2011/4/30 Herry Sutjipto <[email protected]>

Dear Mr Kid,
>Jumlah digit tidak selalu sama, terutama ketinggian titik (level), juga no 
>titik dan identifikasi titiknya tidak konsisten jumlah digitnya.
>
>
>Regards
>Herry Sutjipto
>
>
>
>
>On 29 Apr 2011, at 20:32, "Mr. Kid" <[email protected]> wrote:
>
>Karena delimiternya adalah comma, maka pemisah desimal adalah titik atau 
>source-nya selalu dengan regional setting EN.
>>Memisahkan setiap item dengan jarak yang cukup lebar dan konstan, akan 
>>memudahkan parse.
>>Umumnya menggunakan fungsi Substitute. Yang disubstitute adalah delimiter, 
>>diganti dengan spasi yang panjaaaang buangeti..
>>contoh :
>>SUBSTITUTE($B5,",",REPT(" ",99))
>>setelah dapat data :
>>item1                                          
>>item2                                                
>>item3                             itemx
>>akan lebih mudah membayangkan mana yang akan diambil.
>>Ujung kiri dengan left sepanjang 99 (karena substitute diganti spasi sebanyak 
>>99 char)
>>ujung kanan pakai right sebanyak 99 char juga
>>tengahnya pakai Mid dengan titik start adalah kelipatan 99 dengan 99 pertama 
>>adalah ujung kiri.
>>
>>Untuk regional setting ID, atau yang suka dengan pemisah desimal berupa tanda 
>>koma, maka perlu substitute sekali lagi, yaitu substitute hasil pengambilan 
>>item. Yang disubstitute adalah karakter titik diganti menjadi karakter koma.
>>Substitute( Mid( substitute( $b5, "," , Rept( " " , 99 ) ) , 1*99 , 99 ) , 
>>"." , ",")
>>
>>Kalau tidak yakin dengan regional setting yang digunakannya, maka bagian yang 
>>di-bold diganti dengan :
>>Text( 0 , "." )
>>
>>Oh iya, penentuan 99 tergantung panjang data. Biasanya 99 masih bisa 
>>meng-handle sampai 105 karakter data (kira2 rerata loh, stdev-nya bisa lebar 
>>banget)
>>
>>Regards.
>>Kid.
>>

Kirim email ke