mas Zain, mungkin yang displit direplace dulu karakter - (pengurangan) menjadi +- (tambah nilai negatif) jadi bisa mengakomodir 100-50+2
Wassalam, Kid. 2013/11/19 zainul_ulum[at]yahoo[dot]com <[email protected]> > > > kalo ingin lebih ringkas, > '==== > Function Jumlah(strInput As String) As Double > Dim Extracted As Variant, i As Integer > Dim dJumlah As Double, dAngka As Double > Extracted = Split(strInput, "+") > dJumlah = 0 > For i = LBound(Extracted) To UBound(Extracted) > Debug.Print Extracted(i) > If Extracted(i) = vbNullString Then > dAngka = 0 > Else > dAngka = CDbl(Extracted(i)) > End If > > dJumlah = dJumlah + dAngka > Next i > Jumlah = dJumlah > End Function > '==== > 'simpan fungsi di atas di model ms access. > kira-kira SQL nya adalah sebagai berikut... > > SELECT Jumlah([JUMLAH_BARANG]) AS TOTAL > > silahkan dicoba > > > -----Original Message----- > From: zainul_ulum[at]yahoo[dot]com [mailto:[email protected]] > Sent: Tuesday, November 19, 2013 3:14 PM > To: '[email protected]' > Subject: RE: Bls: [belajar-excel] Merubah deretan jumlah angka yang berupa > text menjadi hasil numeric [2 Attachments] > > Mungkin bisa dicoba pakai formula UDF (User Defined Function) di ms. > access sbb: > > '============================= > Function Jumlahkan(strInput As String) As Double > > Dim i As Integer, j As Integer > Dim aChr As String > Dim opr() As String > > strInput = [A1].Value > 'tambahakan tanda "+" jika input tidak diawali dengan tanda plus (+) > If Left(strInput, 1) <> "+" Then > strInput = "+" & strInput > End If > j = -1 > For i = 1 To Len(strInput) > aChr = Mid(strInput, i, 1) 'cek karakter ke-i > If InStr(1, "+", aChr) <> 0 Then 'jika karakter="+" > j = j + 1 > ReDim Preserve opr(j) 'simpan posisinya > opr(j) = i > End If > Next i > > 'merubah menjadi fungsi matematika > Dim dJumlah As Double, w As Integer, st As Integer > dJumlah = 0 > For i = 1 To UBound(opr) > st = opr(i - 1) + 1 > w = opr(i) - st > dJumlah = dJumlah + CDbl(Mid(strInput, st, w)) > Next i > > 'menjumlahkan angka terakhir > dJumlah = dJumlah + CDbl(Mid(strInput, opr(UBound(opr)) + 1, 99)) > Jumlahkan = dJumlah > End Function > '================================================ > > From: [email protected] [mailto:[email protected]] > On Behalf Of [email protected] > Sent: Tuesday, November 19, 2013 7:49 AM > To: [email protected] > Subject: RE: Bls: [belajar-excel] Merubah deretan jumlah angka yang berupa > text menjadi hasil numeric [2 Attachments] > > maaf bang boleh minta pencerahan lagi :D > > Saya coba terapkan rumus ini ke Query Ms. Access tapi ternyata tidak > berhasil :(, karena formula nya berbeda (biasa nya ga beda jauh :D) > > Mungkin ini keluar dari topik excel :D, cuman saya sudah posting ke milis > access tapi belum ada yang reply, nampaknya tu milis udah ga pada aktiv > :D.. > > mohon bantuan nya ya bang plisss... > saya lampirkan file access sama capture nya terimakasih > > insya Allah Barakah :) > > ---In [email protected], <ghozialkatiri@...> wrote: > formula array (Ctrl + Shift +Enter) > =SUM(IFERROR(--MID(SUBSTITUTE(A2,"+",REPT(" > ",LEN(A2))),(ROW($1:$10)-1)*LEN(A2)+1,LEN(A2)),"")) > > copy ke bawah > > wassalam > > Ghozi Alkatiri > > Pada Minggu, 17 November 2013 21:13, "dono_songz@..." <dono_songz@...> > menulis: > > Selamat siang :) > > Bagaimana rumus merubah deretan jumlah angka yang berupa text menjadi > hasil numeric contoh : Cell A1: "100+200+800+1500", nah pada B1 hasilnya > otomatis 2600 (numeric) saya lampirkan capture nya > > mohon bantuan nya ya para master, nanti nya saya akan terapkan rumus ini > ke Microsoft Access.. > Terimakasih :) > > >

