12 New Messages
Digest #2200
Messages
Fri Mar 29, 2013 7:24 pm (PDT) . Posted by:
"lapendosol opik" lapendosol
Dear master excel
Saya memiliki kode VBA, dimana isi tiap beberapa baris adalah sama dengan lainnya.
Bagaimana cara menyederhanakan kode VBA tersebut agar lebih simple, berikut kode VBAnya:
Private Sub cmdL_Click()
If lblFolder.Caption = "" Then
MsgBox ("Tentukan Folder Terlebih Dahulu")
ElseIf lblJari.Caption = "L1F" Then
lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kiri memiliki arus alur kekiri."
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
lblL1.Caption = "L"
txtL1.SetFocus
ElseIf lblJari.Caption = "L2F" Then
lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kiri memiliki arus alur kekiri."
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
lblL2.Caption = "L"
txtL2.SetFocus
ElseIf lblJari.Caption = "L3F" Then
lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kiri memiliki arus alur kekiri."
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
lblL3.Caption = "L"
txtL3.SetFocus
ElseIf lblJari.Caption = "R1F" Then
lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kanan memiliki arus alur kekanan."
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
lblR1.Caption = "L"
txtR1.SetFocus
ElseIf lblJari.Caption = "R2F" Then
lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kanan memiliki arus alur kekanan."
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
lblR2.Caption = "L"
txtR2.SetFocus
ElseIf lblJari.Caption = "R3F" Then
lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kanan memiliki arus alur kekanan."
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
lblR3.Caption = "L"
txtR3.SetFocus
End If
End Sub
Yang berwarna ungu adalah bagian yang diulang-ulang untuk tangan kiri, dan
yang berwarna hijau adalah bagian yang diulang-ulang untuk tangan kanan.
Mohon pencerahannya untuk kasus seperti ini
Sebelumnya saya ucapkan banyak terimakasih
Wassalam
Saya memiliki kode VBA, dimana isi tiap beberapa baris adalah sama dengan lainnya.
Bagaimana cara menyederhanakan kode VBA tersebut agar lebih simple, berikut kode VBAnya:
Private Sub cmdL_Click()
If lblFolder.Caption = "" Then
MsgBox ("Tentukan Folder Terlebih Dahulu"
ElseIf lblJari.Caption = "L1F" Then
lblKeterangan.
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
lblL1.Caption = "L"
txtL1.SetFocus
ElseIf lblJari.Caption = "L2F" Then
lblKeterangan.
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
lblL2.Caption = "L"
txtL2.SetFocus
ElseIf lblJari.Caption = "L3F" Then
lblKeterangan.
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
lblL3.Caption = "L"
txtL3.SetFocus
ElseIf lblJari.Caption = "R1F" Then
lblKeterangan.
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
lblR1.Caption = "L"
txtR1.SetFocus
ElseIf lblJari.Caption = "R2F" Then
lblKeterangan.
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
lblR2.Caption = "L"
txtR2.SetFocus
ElseIf lblJari.Caption = "R3F" Then
lblKeterangan.
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
lblR3.Caption = "L"
txtR3.SetFocus
End If
End Sub
Yang berwarna ungu adalah bagian yang diulang-ulang untuk tangan kiri, dan
yang berwarna hijau adalah bagian yang diulang-ulang untuk tangan kanan.
Mohon pencerahannya untuk kasus seperti ini
Sebelumnya saya ucapkan banyak terimakasih
Wassalam
Sat Mar 30, 2013 12:07 am (PDT) . Posted by:
"Mr. Kid" nmkid.family@ymail.com
Coba :
dim oLbl(1,2) as control,oTxt(1,2) as control 'ganti control dengan
msforms.label atau msforms.textbox jika object ada di worksheet
dim sKet as string, sFile as string, sJari as string,sSisi as
string,sSisiTeks as string
dim lSisi as long, lNo as long
set olbl(0,0)=lblL1:set olbl(0,1)=lblL2:set olbl(0,2)=lblL3
set olbl(1,0)=lblr1:set olbl(1,1)=lblr2:set olbl(1,2)=lblr3
set otxt(0,0)=txtL1:set otxt(0,1)=txtL2:set otxt(0,2)=txtL3
set otxt(1,0)=txtr1:set otxt(1,1)=txtr2:set otxt(1,2)=txtr3
sket="Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur
ke%s."
sfile="C:\Tipe Jari\%sL1.jpg"
If lenb(lblFolder.Caption) <>0 Then
sjari=lblJari.Caption
lno=clng(mid$(sjari,2,1))-1
if left$(sjari,1)="R" then
lsisi=1
ssisi=left$(sjari,1)
ssisiteks="kanan"
else
lsisi=0
ssisi=vbnullstring
ssisiteks="kiri"
endif
lblKeterangan.Caption = replace$(sket,"%s",ssisiteks)
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture(replace$(sfile,"%s",ssisi))
olbl(lsisi,lno).caption=left$(sjari,1)
otxt(lsisi,lno).setfocus
else
MsgBox ("Tentukan Folder Terlebih Dahulu")
endif
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.com >
> **
>
>
> Dear master excel
> Saya memiliki kode VBA, dimana isi tiap beberapa baris adalah sama dengan
> lainnya.
> Bagaimana cara menyederhanakan kode VBA tersebut agar lebih simple,
> berikut kode VBAnya:
>
> Private Sub cmdL_Click()
> If lblFolder.Caption = "" Then
> MsgBox ("Tentukan Folder Terlebih Dahulu")
> ElseIf lblJari.Caption = "L1F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
> lblL1.Caption = "L"
> txtL1.SetFocus
> ElseIf lblJari.Caption = "L2F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
> lblL2.Caption = "L"
> txtL2.SetFocus
> ElseIf lblJari.Caption = "L3F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
> lblL3.Caption = "L"
> txtL3.SetFocus
>
> ElseIf lblJari.Caption = "R1F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
> lblR1.Caption = "L"
> txtR1.SetFocus
> ElseIf lblJari.Caption = "R2F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
> lblR2.Caption = "L"
> txtR2.SetFocus
> ElseIf lblJari.Caption = "R3F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
> lblR3.Caption = "L"
> txtR3.SetFocus
> End If
> End Sub
>
> Yang berwarna ungu adalah bagian yang diulang-ulang untuk tangan kiri, dan
> yang berwarna hijau adalah bagian yang diulang-ulang untuk tangan kanan.
> Mohon pencerahannya untuk kasus seperti ini
> Sebelumnya saya ucapkan banyak terimakasih
> Wassalam
>
>
>
dim oLbl(1,2) as control,oTxt(
msforms.label atau msforms.textbox jika object ada di worksheet
dim sKet as string, sFile as string, sJari as string,sSisi as
string,sSisiTeks as string
dim lSisi as long, lNo as long
set olbl(0,0)=lblL1:
set olbl(1,0)=lblr1:
set otxt(0,0)=txtL1:
set otxt(1,0)=txtr1:
sket="Berbentu
ke%s."
sfile="
If lenb(lblFolder.
sjari=lblJari.
lno=clng(mid$
if left$(sjari,
lsisi=1
ssisi=left$(
ssisiteks="
else
lsisi=0
ssisi=vbnullstring
ssisiteks="
endif
lblKeterangan.
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
olbl(lsisi,lno)
otxt(lsisi,lno)
else
MsgBox ("Tentukan Folder Terlebih Dahulu"
endif
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.
> **
>
>
> Dear master excel
> Saya memiliki kode VBA, dimana isi tiap beberapa baris adalah sama dengan
> lainnya.
> Bagaimana cara menyederhanakan kode VBA tersebut agar lebih simple,
> berikut kode VBAnya:
>
> Private Sub cmdL_Click()
> If lblFolder.Caption = "" Then
> MsgBox ("Tentukan Folder Terlebih Dahulu"
> ElseIf lblJari.Caption = "L1F" Then
> lblKeterangan.
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblL1.Caption = "L"
> txtL1.SetFocus
> ElseIf lblJari.Caption = "L2F" Then
> lblKeterangan.
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblL2.Caption = "L"
> txtL2.SetFocus
> ElseIf lblJari.Caption = "L3F" Then
> lblKeterangan.
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblL3.Caption = "L"
> txtL3.SetFocus
>
> ElseIf lblJari.Caption = "R1F" Then
> lblKeterangan.
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblR1.Caption = "L"
> txtR1.SetFocus
> ElseIf lblJari.Caption = "R2F" Then
> lblKeterangan.
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblR2.Caption = "L"
> txtR2.SetFocus
> ElseIf lblJari.Caption = "R3F" Then
> lblKeterangan.
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblR3.Caption = "L"
> txtR3.SetFocus
> End If
> End Sub
>
> Yang berwarna ungu adalah bagian yang diulang-ulang untuk tangan kiri, dan
> yang berwarna hijau adalah bagian yang diulang-ulang untuk tangan kanan.
> Mohon pencerahannya untuk kasus seperti ini
> Sebelumnya saya ucapkan banyak terimakasih
> Wassalam
>
>
>
Sat Mar 30, 2013 1:24 am (PDT) . Posted by:
"lapendosol opik" lapendosol
Trimakasih banyak Mas Kid,
Kode aslinya ada 10, L1F - L5F dan R1F - R5F
ImgBoxnya ada 2, imgC1 dan imgC2
Terdapat juga lblNamaJari, tapi ini sifatnya fix, tidak berubah meskipun berganti L1F sampai R5F
Tujuan saya biar sederhana, termasuk contoh kasusnya jadi saya sederhanakan.
Berikut solusi dari Mas Kid yg udah disesuaikan data aslinya, kalo ada yg kurang tepat mohon bersedia mengkoreksi lagi:
Dim oLbl(1,4)As Control,oTxt(1,4)As Control 'ganti control dengan msforms.label atau msforms.textbox jika object ada di worksheet
Dim sKet As String,sfile1 As String,sfile2 As String,sJari As String,sSisi As String,sSisiTeks As String
Dim lSisi As Long,lNo As Long
Set oLbl(0,0)=lblL1:Set oLbl(0,1)=lblL2:Set oLbl(0,2)=lblL3:Set oLbl(0,3)=lblL4:Set oLbl(0,4)=lblL5
Set oLbl(1,0)=lblR1:Set oLbl(1,1)=lblR2:Set oLbl(1,2)=lblR3:Set oLbl(1,3)=lblR4:Set oLbl(1,4)=lblR5
Set oTxt(0,0)=txtL1:Set oTxt(0,1)=txtL2:Set oTxt(0,2)=txtL3:Set oTxt(0,3)=txtL4:Set oTxt(0,4)=txtL5
Set oTxt(1,0)=txtR1:Set oTxt(1,1)=txtR2:Set oTxt(1,2)=txtR3:Set oTxt(1,3)=txtR4:Set oTxt(1,4)=txtR5
sKet = "Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur ke%s."
sfile1 = "C:\Tipe Jari\%sL1.jpg"
sfile2 = "C:\Tipe Jari\%sL2.jpg"
If LenB(lblFolder.Caption) <> 0 Then
lblNamaJari.Caption = "Loop"
sJari = lblJari.Caption
lNo = CLng(Mid$(sJari, 2, 1)) - 1
If Left$(sJari, 1) = "R" Then
lSisi = 1
sSisi = Left$(sJari, 1)
sSisiTeks = "kanan"
Else
lSisi = 0
sSisi = vbNullString
sSisiTeks = "kiri"
End If
lblKeterangan.Caption = Replace$(sKet, "%s", sSisiTeks)
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture(Replace$(sfile1, "%s", sSisi))
imgC2.Picture = LoadPicture(vbNullString)
imgC2.Picture = LoadPicture(Replace$(sfile2, "%s", sSisi))
oLbl(lSisi, lNo).Caption = Left$(sJari, 1)
oTxt(lSisi, lNo).SetFocus
Else
MsgBox ("Tentukan Folder Terlebih Dahulu")
End If
Wassalam
________________________________
From: Mr. Kid <mr.nmkid@gmail.com >
To: BeExcel <belajar-excel@yahoogroups.com >
Sent: Saturday, March 30, 2013 2:07 PM
Subject: Re: [belajar-excel] Penyederhanaan kode VBA yg berulang-ulang
Coba :
dim oLbl(1,2) as control,oTxt(1,2) as control 'ganti control dengan msforms.label atau msforms.textbox jika object ada di worksheet
dim sKet as string, sFile as string, sJari as string,sSisi as string,sSisiTeks as string
dim lSisi as long, lNo as long
set olbl(0,0)=lblL1:set olbl(0,1)=lblL2:set olbl(0,2)=lblL3
set olbl(1,0)=lblr1:set olbl(1,1)=lblr2:set olbl(1,2)=lblr3
set otxt(0,0)=txtL1:set otxt(0,1)=txtL2:set otxt(0,2)=txtL3
set otxt(1,0)=txtr1:set otxt(1,1)=txtr2:set otxt(1,2)=txtr3
sket="Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur ke%s."
sfile="C:\Tipe Jari\%sL1.jpg"
If lenb(lblFolder.Caption) <>0 Then
sjari=lblJari.Caption
lno=clng(mid$(sjari,2,1))-1
if left$(sjari,1)="R" then
lsisi=1
ssisi=left$(sjari,1)
ssisiteks="kanan"
else
lsisi=0
ssisi=vbnullstring
ssisiteks="kiri"
endif
lblKeterangan.Caption = replace$(sket,"%s",ssisiteks)
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture(replace$(sfile,"%s",ssisi))
olbl(lsisi,lno).caption=left$(sjari,1)
otxt(lsisi,lno).setfocus
else
MsgBox ("Tentukan Folder Terlebih Dahulu")
endif
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.com >
>
>Dear master excel
>Saya memiliki kode VBA, dimana isi tiap beberapa baris adalah sama dengan lainnya.
>Bagaimana cara menyederhanakan kode VBA tersebut agar lebih simple, berikut kode VBAnya:
>
>
>Private Sub cmdL_Click()
>If lblFolder.Caption = "" Then
>MsgBox ("Tentukan Folder Terlebih Dahulu")
>ElseIf lblJari.Caption = "L1F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe
Jari\L1.jpg")
> lblL1.Caption = "L"
> txtL1.SetFocus
>ElseIf lblJari.Caption = "L2F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
> lblL2.Caption = "L"
> txtL2.SetFocus
>ElseIf lblJari.Caption = "L3F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
> lblL3.Caption = "L"
>
txtL3.SetFocus
>
>ElseIf lblJari.Caption = "R1F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
> lblR1.Caption = "L"
> txtR1.SetFocus
>ElseIf lblJari.Caption = "R2F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
> lblR2.Caption = "L"
> txtR2.SetFocus
>ElseIf lblJari.Caption = "R3F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
> lblR3.Caption = "L"
> txtR3.SetFocus
>End If
>End Sub
>
>
>Yang berwarna ungu adalah bagian yang diulang-ulang untuk tangan kiri, dan
yang berwarna hijau adalah bagian yang diulang-ulang untuk tangan kanan.
>Mohon pencerahannya untuk kasus seperti ini
>Sebelumnya saya ucapkan banyak terimakasih
>Wassalam
>
Kode aslinya ada 10, L1F - L5F dan R1F - R5F
ImgBoxnya ada 2, imgC1 dan imgC2
Terdapat juga lblNamaJari, tapi ini sifatnya fix, tidak berubah meskipun berganti L1F sampai R5F
Tujuan saya biar sederhana, termasuk contoh kasusnya jadi saya sederhanakan.
Berikut solusi dari Mas Kid yg udah disesuaikan data aslinya, kalo ada yg kurang tepat mohon bersedia mengkoreksi lagi:
Dim oLbl(1,4)As Control,oTxt(
Dim sKet As String,sfile1 As String,sfile2 As String,sJari As String,sSisi As String,sSisiTeks As String
Dim lSisi As Long,lNo As Long
Set oLbl(0,0)=lblL1:
Set oLbl(1,0)=lblR1:
Set oTxt(0,0)=txtL1:
Set oTxt(1,0)=txtR1:
sKet = "Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur ke%s."
sfile1 = "C:\
sfile2 = "C:\
If LenB(lblFolder.
lblNamaJari.
sJari = lblJari.Caption
lNo = CLng(Mid$(sJari, 2, 1)) - 1
If Left$(sJari, 1) = "R" Then
lSisi = 1
sSisi = Left$(sJari, 1)
sSisiTeks = "kanan"
Else
lSisi = 0
sSisi = vbNullString
sSisiTeks = "kiri"
End If
lblKeterangan.
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
imgC2.Picture = LoadPicture(
imgC2.Picture = LoadPicture(
oLbl(lSisi, lNo).Caption = Left$(sJari, 1)
oTxt(lSisi, lNo).SetFocus
Else
MsgBox ("Tentukan Folder Terlebih Dahulu"
End If
Wassalam
____________
From: Mr. Kid <mr.nmkid@gmail.
To: BeExcel <belajar-excel@
Sent: Saturday, March 30, 2013 2:07 PM
Subject: Re: [belajar-excel] Penyederhanaan kode VBA yg berulang-ulang
Coba :
dim oLbl(1,2) as control,oTxt(
dim sKet as string, sFile as string, sJari as string,sSisi as string,sSisiTeks as string
dim lSisi as long, lNo as long
set olbl(0,0)=lblL1:
set olbl(1,0)=lblr1:
set otxt(0,0)=txtL1:
set otxt(1,0)=txtr1:
sket="Berbentu
sfile="
If lenb(lblFolder.
sjari=lblJari.
lno=clng(mid$
if left$(sjari,
lsisi=1
ssisi=left$(
ssisiteks="
else
lsisi=0
ssisi=vbnullstring
ssisiteks="
endif
lblKeterangan.
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
olbl(lsisi,lno)
otxt(lsisi,lno)
else
MsgBox ("Tentukan Folder Terlebih Dahulu"
endif
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.
>
>Dear master excel
>Saya memiliki kode VBA, dimana isi tiap beberapa baris adalah sama dengan lainnya.
>Bagaimana cara menyederhanakan kode VBA tersebut agar lebih simple, berikut kode VBAnya:
>
>
>Private Sub cmdL_Click()
>If lblFolder.Caption = "" Then
>MsgBox ("Tentukan Folder Terlebih Dahulu"
>ElseIf lblJari.Caption = "L1F" Then
> lblKeterangan.
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
Jari\L1.
> lblL1.Caption = "L"
> txtL1.SetFocus
>ElseIf lblJari.Caption = "L2F" Then
> lblKeterangan.
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblL2.Caption = "L"
> txtL2.SetFocus
>ElseIf lblJari.Caption = "L3F" Then
> lblKeterangan.
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblL3.Caption = "L"
>
txtL3.SetFocus
>
>ElseIf lblJari.Caption = "R1F" Then
> lblKeterangan.
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblR1.Caption = "L"
> txtR1.SetFocus
>ElseIf lblJari.Caption = "R2F" Then
> lblKeterangan.
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblR2.Caption = "L"
> txtR2.SetFocus
>ElseIf lblJari.Caption = "R3F" Then
> lblKeterangan.
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblR3.Caption = "L"
> txtR3.SetFocus
>End If
>End Sub
>
>
>Yang berwarna ungu adalah bagian yang diulang-ulang untuk tangan kiri, dan
yang berwarna hijau adalah bagian yang diulang-ulang untuk tangan kanan.
>Mohon pencerahannya untuk kasus seperti ini
>Sebelumnya saya ucapkan banyak terimakasih
>Wassalam
>
Sat Mar 30, 2013 2:03 am (PDT) . Posted by:
"Mr. Kid" nmkid.family@ymail.com
Andaikan object akan terus digunakan sampai userform ditutup, maka proses
set object array bisa dilakukan diawal (saat initialize misalnya). Untuk
kebutuhan ini, maka variabel dinaikkan scope-nya dari scope prosedur
menjadi scope module.
Contoh :
Pada userform (lembar code userform) beri deklarasi veriabel seperti baris
dibawah ini, sebelum baris deklarasi prosedur pertama yang ada :
private oLbl(1,4) as label, oTxt(1,4) as textbox
Kemudian, karena ada beberapa variabel yang akan selalu tetap nilainya
sepanjang userform masih bekerja, maka diberi deklarasi variabel yang diset
konstan. Misal variabel sKet, sFile1, sFile2
Biasanya, beginilah cara penggunaan variabel yang diset konstan nilainya.
private const sKet as string = "Berbentuk seperti rambut ikal. Pada tangan
%s memiliki arus alur ke%s."
private const sFile1 as string = "C:\Tipe Jari\%sL1.jpg"
private const sFile2 as string = "C:\Tipe Jari\%sL2.jpg"
proses set object dilakukan pada event initialize userform :
private sub userform_initialize()
Set oLbl(0,0)=lblL1:Set oLbl(0,1)=lblL2:Set oLbl(0,2)=lblL3:Set
oLbl(0,3)=lblL4:Set oLbl(0,4)=lblL5
Set oLbl(1,0)=lblR1:Set oLbl(1,1)=lblR2:Set oLbl(1,2)=lblR3:Set
oLbl(1,3)=lblR4:Set oLbl(1,4)=lblR5
Set oTxt(0,0)=txtL1:Set oTxt(0,1)=txtL2:Set oTxt(0,2)=txtL3:Set
oTxt(0,3)=txtL4:Set oTxt(0,4)=txtL5
Set oTxt(1,0)=txtR1:Set oTxt(1,1)=txtR2:Set oTxt(1,2)=txtR3:Set
oTxt(1,3)=txtR4:Set oTxt(1,4)=txtR5
end sub
nanti pada event click suatu commandbutton bisa berisi :
Dim sJari As String,sSisi As String,sSisiTeks As String
Dim lSisi As Long,lNo As Long
If LenB(lblFolder.Caption) <> 0 Then
lblNamaJari.Caption = "Loop"
sJari = lblJari.Caption
lNo = CLng(Mid$(sJari, 2, 1)) - 1
If Left$(sJari, 1) = "R" Then
lSisi = 1
sSisi = Left$(sJari, 1)
sSisiTeks = "kanan"
Else
lSisi = 0
sSisi = vbNullString
sSisiTeks = "kiri"
End If
lblKeterangan.Caption = Replace$(sKet, "%s", sSisiTeks)
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture(Replace$(sfile1, "%s", sSisi))
imgC2.Picture = LoadPicture(vbNullString)
imgC2.Picture = LoadPicture(Replace$(sfile2, "%s", sSisi))
oLbl(lSisi, lNo).Caption = Left$(sJari, 1)
oTxt(lSisi, lNo).SetFocus
Else
MsgBox ("Tentukan Folder Terlebih Dahulu")
End If
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.com >
> **
>
>
> Trimakasih banyak Mas Kid,
> Kode aslinya ada 10, L1F - L5F dan R1F - R5F
> ImgBoxnya ada 2, imgC1 dan imgC2
> Terdapat juga lblNamaJari, tapi ini sifatnya fix, tidak berubah meskipun
> berganti L1F sampai R5F
> Tujuan saya biar sederhana, termasuk contoh kasusnya jadi saya
> sederhanakan.
> Berikut solusi dari Mas Kid yg udah disesuaikan data aslinya, kalo ada yg
> kurang tepat mohon bersedia mengkoreksi lagi:
>
> Dim oLbl(1,4)As Control,oTxt(1,4)As Control 'ganti control dengan
> msforms.label atau msforms.textbox jika object ada di worksheet
> Dim sJari As String,sSisi As String,sSisiTeks As String
> Dim lSisi As Long,lNo As Long
>
> Set oLbl(0,0)=lblL1:Set oLbl(0,1)=lblL2:Set oLbl(0,2)=lblL3:Set
> oLbl(0,3)=lblL4:Set oLbl(0,4)=lblL5
> Set oLbl(1,0)=lblR1:Set oLbl(1,1)=lblR2:Set oLbl(1,2)=lblR3:Set
> oLbl(1,3)=lblR4:Set oLbl(1,4)=lblR5
> Set oTxt(0,0)=txtL1:Set oTxt(0,1)=txtL2:Set oTxt(0,2)=txtL3:Set
> oTxt(0,3)=txtL4:Set oTxt(0,4)=txtL5
> Set oTxt(1,0)=txtR1:Set oTxt(1,1)=txtR2:Set oTxt(1,2)=txtR3:Set
> oTxt(1,3)=txtR4:Set oTxt(1,4)=txtR5
> sKet = "Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur
> ke%s."
> sfile1 = "C:\Tipe Jari\%sL1.jpg"
> sfile2 = "C:\Tipe Jari\%sL2.jpg"
>
> If LenB(lblFolder.Caption) <> 0 Then
> lblNamaJari.Caption = "Loop"
> sJari = lblJari.Caption
> lNo = CLng(Mid$(sJari, 2, 1)) - 1
> If Left$(sJari, 1) = "R" Then
> lSisi = 1
> sSisi = Left$(sJari, 1)
> sSisiTeks = "kanan"
> Else
> lSisi = 0
> sSisi = vbNullString
> sSisiTeks = "kiri"
> End If
> lblKeterangan.Caption = Replace$(sKet, "%s", sSisiTeks)
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture(Replace$(sfile1, "%s", sSisi))
> imgC2.Picture = LoadPicture(vbNullString)
> imgC2.Picture = LoadPicture(Replace$(sfile2, "%s", sSisi))
> oLbl(lSisi, lNo).Caption = Left$(sJari, 1)
> oTxt(lSisi, lNo).SetFocus
>
> Else
> MsgBox ("Tentukan Folder Terlebih Dahulu")
> End If
>
> Wassalam
>
> ------------------------------
> *From:* Mr. Kid <mr.nmkid@gmail.com >
> *To:* BeExcel <belajar-excel@yahoogroups.com >
> *Sent:* Saturday, March 30, 2013 2:07 PM
> *Subject:* Re: [belajar-excel] Penyederhanaan kode VBA yg berulang-ulang
>
>
> Coba :
>
> dim oLbl(1,2) as control,oTxt(1,2) as control 'ganti control dengan
> msforms.label atau msforms.textbox jika object ada di worksheet
> dim sKet as string, sFile as string, sJari as string,sSisi as
> string,sSisiTeks as string
> dim lSisi as long, lNo as long
>
> set olbl(0,0)=lblL1:set olbl(0,1)=lblL2:set olbl(0,2)=lblL3
> set olbl(1,0)=lblr1:set olbl(1,1)=lblr2:set olbl(1,2)=lblr3
> set otxt(0,0)=txtL1:set otxt(0,1)=txtL2:set otxt(0,2)=txtL3
> set otxt(1,0)=txtr1:set otxt(1,1)=txtr2:set otxt(1,2)=txtr3
> sket="Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur
> ke%s."
> sfile="C:\Tipe Jari\%sL1.jpg"
>
> If lenb(lblFolder.Caption) <>0 Then
> sjari=lblJari.Caption
> lno=clng(mid$(sjari,2,1))-1
> if left$(sjari,1)="R" then
> lsisi=1
> ssisi=left$(sjari,1)
> ssisiteks="kanan"
> else
> lsisi=0
> ssisi=vbnullstring
> ssisiteks="kiri"
> endif
> lblKeterangan.Caption = replace$(sket,"%s",ssisiteks)
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture(replace$(sfile,"%s",ssisi))
> olbl(lsisi,lno).caption=left$(sjari,1)
> otxt(lsisi,lno).setfocus
> else
> MsgBox ("Tentukan Folder Terlebih Dahulu")
> endif
>
>
> Wassalam,
> Kid.
>
> 2013/3/30 lapendosol opik <lapendosol@yahoo.com >
>
> **
>
> Dear master excel
> Saya memiliki kode VBA, dimana isi tiap beberapa baris adalah sama dengan
> lainnya.
> Bagaimana cara menyederhanakan kode VBA tersebut agar lebih simple,
> berikut kode VBAnya:
>
> Private Sub cmdL_Click()
> If lblFolder.Caption = "" Then
> MsgBox ("Tentukan Folder Terlebih Dahulu")
> ElseIf lblJari.Caption = "L1F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
> lblL1.Caption = "L"
> txtL1.SetFocus
> ElseIf lblJari.Caption = "L2F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
> lblL2.Caption = "L"
> txtL2.SetFocus
> ElseIf lblJari.Caption = "L3F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
> lblL3.Caption = "L"
> txtL3.SetFocus
>
> ElseIf lblJari.Caption = "R1F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
> lblR1.Caption = "L"
> txtR1.SetFocus
> ElseIf lblJari.Caption = "R2F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
> lblR2.Caption = "L"
> txtR2.SetFocus
> ElseIf lblJari.Caption = "R3F" Then
> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
> lblR3.Caption = "L"
> txtR3.SetFocus
> End If
> End Sub
>
> Yang berwarna ungu adalah bagian yang diulang-ulang untuk tangan kiri, dan
> yang berwarna hijau adalah bagian yang diulang-ulang untuk tangan kanan.
> Mohon pencerahannya untuk kasus seperti ini
> Sebelumnya saya ucapkan banyak terimakasih
> Wassalam
>
>
>
>
>
>
set object array bisa dilakukan diawal (saat initialize misalnya). Untuk
kebutuhan ini, maka variabel dinaikkan scope-nya dari scope prosedur
menjadi scope module.
Contoh :
Pada userform (lembar code userform) beri deklarasi veriabel seperti baris
dibawah ini, sebelum baris deklarasi prosedur pertama yang ada :
private oLbl(1,4) as label, oTxt(1,4) as textbox
Kemudian, karena ada beberapa variabel yang akan selalu tetap nilainya
sepanjang userform masih bekerja, maka diberi deklarasi variabel yang diset
konstan. Misal variabel sKet, sFile1, sFile2
Biasanya, beginilah cara penggunaan variabel yang diset konstan nilainya.
private const sKet as string = "Berbentuk seperti rambut ikal. Pada tangan
%s memiliki arus alur ke%s."
private const sFile1 as string = "C:\
private const sFile2 as string = "C:\
proses set object dilakukan pada event initialize userform :
private sub userform_initialize
Set oLbl(0,0)=lblL1:
oLbl(0,3)=lblL4:
Set oLbl(1,0)=lblR1:
oLbl(1,3)=lblR4:
Set oTxt(0,0)=txtL1:
oTxt(0,3)=txtL4:
Set oTxt(1,0)=txtR1:
oTxt(1,3)=txtR4:
end sub
nanti pada event click suatu commandbutton bisa berisi :
Dim sJari As String,sSisi As String,sSisiTeks As String
Dim lSisi As Long,lNo As Long
If LenB(lblFolder.
lblNamaJari.
sJari = lblJari.Caption
lNo = CLng(Mid$(sJari, 2, 1)) - 1
If Left$(sJari, 1) = "R" Then
lSisi = 1
sSisi = Left$(sJari, 1)
sSisiTeks = "kanan"
Else
lSisi = 0
sSisi = vbNullString
sSisiTeks = "kiri"
End If
lblKeterangan.
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
imgC2.Picture = LoadPicture(
imgC2.Picture = LoadPicture(
oLbl(lSisi, lNo).Caption = Left$(sJari, 1)
oTxt(lSisi, lNo).SetFocus
Else
MsgBox ("Tentukan Folder Terlebih Dahulu"
End If
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.
> **
>
>
> Trimakasih banyak Mas Kid,
> Kode aslinya ada 10, L1F - L5F dan R1F - R5F
> ImgBoxnya ada 2, imgC1 dan imgC2
> Terdapat juga lblNamaJari, tapi ini sifatnya fix, tidak berubah meskipun
> berganti L1F sampai R5F
> Tujuan saya biar sederhana, termasuk contoh kasusnya jadi saya
> sederhanakan.
> Berikut solusi dari Mas Kid yg udah disesuaikan data aslinya, kalo ada yg
> kurang tepat mohon bersedia mengkoreksi lagi:
>
> Dim oLbl(1,4)As Control,oTxt(
> msforms.label atau msforms.textbox jika object ada di worksheet
> Dim sJari As String,sSisi As String,sSisiTeks As String
> Dim lSisi As Long,lNo As Long
>
> Set oLbl(0,0)=lblL1:
> oLbl(0,3)=lblL4:
> Set oLbl(1,0)=lblR1:
> oLbl(1,3)=lblR4:
> Set oTxt(0,0)=txtL1:
> oTxt(0,3)=txtL4:
> Set oTxt(1,0)=txtR1:
> oTxt(1,3)=txtR4:
> sKet = "Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur
> ke%s."
> sfile1 = "C:\
> sfile2 = "C:\
>
> If LenB(lblFolder.
> lblNamaJari.
> sJari = lblJari.Caption
> lNo = CLng(Mid$(sJari, 2, 1)) - 1
> If Left$(sJari, 1) = "R" Then
> lSisi = 1
> sSisi = Left$(sJari, 1)
> sSisiTeks = "kanan"
> Else
> lSisi = 0
> sSisi = vbNullString
> sSisiTeks = "kiri"
> End If
> lblKeterangan.
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> imgC2.Picture = LoadPicture(
> imgC2.Picture = LoadPicture(
> oLbl(lSisi, lNo).Caption = Left$(sJari, 1)
> oTxt(lSisi, lNo).SetFocus
>
> Else
> MsgBox ("Tentukan Folder Terlebih Dahulu"
> End If
>
> Wassalam
>
> ------------
> *From:* Mr. Kid <mr.nmkid@gmail.
> *To:* BeExcel <belajar-excel@
> *Sent:* Saturday, March 30, 2013 2:07 PM
> *Subject:* Re: [belajar-excel] Penyederhanaan kode VBA yg berulang-ulang
>
>
> Coba :
>
> dim oLbl(1,2) as control,oTxt(
> msforms.label atau msforms.textbox jika object ada di worksheet
> dim sKet as string, sFile as string, sJari as string,sSisi as
> string,sSisiTeks as string
> dim lSisi as long, lNo as long
>
> set olbl(0,0)=lblL1:
> set olbl(1,0)=lblr1:
> set otxt(0,0)=txtL1:
> set otxt(1,0)=txtr1:
> sket="Berbentu
> ke%s."
> sfile="
>
> If lenb(lblFolder.
> sjari=lblJari.
> lno=clng(mid$
> if left$(sjari,
> lsisi=1
> ssisi=left$(
> ssisiteks="
> else
> lsisi=0
> ssisi=vbnullstring
> ssisiteks="
> endif
> lblKeterangan.
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> olbl(lsisi,lno)
> otxt(lsisi,lno)
> else
> MsgBox ("Tentukan Folder Terlebih Dahulu"
> endif
>
>
> Wassalam,
> Kid.
>
> 2013/3/30 lapendosol opik <lapendosol@yahoo.
>
> **
>
> Dear master excel
> Saya memiliki kode VBA, dimana isi tiap beberapa baris adalah sama dengan
> lainnya.
> Bagaimana cara menyederhanakan kode VBA tersebut agar lebih simple,
> berikut kode VBAnya:
>
> Private Sub cmdL_Click()
> If lblFolder.Caption = "" Then
> MsgBox ("Tentukan Folder Terlebih Dahulu"
> ElseIf lblJari.Caption = "L1F" Then
> lblKeterangan.
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblL1.Caption = "L"
> txtL1.SetFocus
> ElseIf lblJari.Caption = "L2F" Then
> lblKeterangan.
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblL2.Caption = "L"
> txtL2.SetFocus
> ElseIf lblJari.Caption = "L3F" Then
> lblKeterangan.
> kiri memiliki arus alur kekiri."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblL3.Caption = "L"
> txtL3.SetFocus
>
> ElseIf lblJari.Caption = "R1F" Then
> lblKeterangan.
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblR1.Caption = "L"
> txtR1.SetFocus
> ElseIf lblJari.Caption = "R2F" Then
> lblKeterangan.
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblR2.Caption = "L"
> txtR2.SetFocus
> ElseIf lblJari.Caption = "R3F" Then
> lblKeterangan.
> kanan memiliki arus alur kekanan."
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> lblR3.Caption = "L"
> txtR3.SetFocus
> End If
> End Sub
>
> Yang berwarna ungu adalah bagian yang diulang-ulang untuk tangan kiri, dan
> yang berwarna hijau adalah bagian yang diulang-ulang untuk tangan kanan.
> Mohon pencerahannya untuk kasus seperti ini
> Sebelumnya saya ucapkan banyak terimakasih
> Wassalam
>
>
>
>
>
>
Sat Mar 30, 2013 3:22 am (PDT) . Posted by:
"lapendosol opik" lapendosol
Ini hanya buat 1 command Mas, ada sekitar 23 command.
Ini untuk Private Sub cmdL_Click() yang digunakan/diganti-ganti:
sKet = "Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur ke%s."
sfile1 = "C:\Tipe Jari\%sL1.jpg"
sfile2 = "C:\Tipe Jari\%sL2.jpg"If LenB(lblFolder.Caption) <> 0 Then
lblNamaJari.Caption = "Loop"
sJari = lblJari.Caption
lNo = CLng(Mid$(sJari, 2, 1)) - 1
If Left$(sJari, 1) = "R" Then
lSisi = 1
sSisi = Left$(sJari, 1)
sSisiTeks = "kanan"
Else
lSisi = 0
sSisi = vbNullString
sSisiTeks = "kiri"
End If
'pada bagian diatasga tau kode mana yang mengatakan bahwa lblL1 - lblL5 dan lblR1 - lblR5 memiliki nilai "L"
Misal command ke-dua Private Sub cmdRL_Click(), ini kebalikan dari cmdL, maka bagian yang diganti menjadi:
sKet = "Berbentuk kruwel-kruwel atau gimana. Pada tangan %s memiliki arus alur keKANAN."
sfile1 = "C:\Tipe Jari\%sRL1.jpg"
sfile2 = "C:\Tipe Jari\%sRL2.jpg"
lblNamaJari.Caption = "Radial Loop"
lblL1 - lblL5 dan lblR1 - lblR5.Caption= "RL"
sKet yg cmdRL ini, keterangannya kebalikan dari cmdL
Misal command ke-tiga Private Sub cmdTA_Click(), sKet-nya beda lagi, tidak terpengaruh "kanan" dan "kiri"
sKet = "Turunan dari tipe Arch menuju Loop."
sfile1 = "C:\Tipe Jari\%sTA1.jpg"
sfile2 = "C:\Tipe Jari\%sTA2.jpg"
lblNamaJari.Caption = "Tented Arch"lblL1 - lblL5 dan lblR1 - lblR5.Caption = "TA"
Masih ada:
Private Sub cmdPE_Click()
Private Sub cmdPE-R_Click()
Private SubcmdPE-DL_Click()
dll
Trimakasih
________________________________
From: Mr. Kid <mr.nmkid@gmail.com >
To: BeExcel <belajar-excel@yahoogroups.com >
Sent: Saturday, March 30, 2013 4:02 PM
Subject: Re: [belajar-excel] Penyederhanaan kode VBA yg berulang-ulang
Andaikan object akan terus digunakan sampai userform ditutup, maka proses set object array bisa dilakukan diawal (saat initialize misalnya). Untuk kebutuhan ini, maka variabel dinaikkan scope-nya dari scope prosedur menjadi scope module.
Contoh :
Pada userform (lembar code userform) beri deklarasi veriabel seperti baris dibawah ini, sebelum baris deklarasi prosedur pertama yang ada :
private oLbl(1,4) as label, oTxt(1,4) as textbox
Kemudian, karena ada beberapa variabel yang akan selalu tetap nilainya sepanjang userform masih bekerja, maka diberi deklarasi variabel yang diset konstan. Misal variabel sKet, sFile1, sFile2
Biasanya, beginilah cara penggunaan variabel yang diset konstan nilainya.
private const sKet as string = "Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur ke%s."
private const sFile1 as string = "C:\Tipe Jari\%sL1.jpg"
private const sFile2 as string = "C:\Tipe Jari\%sL2.jpg"
proses set object dilakukan pada event initialize userform :
private sub userform_initialize()
Set oLbl(0,0)=lblL1:Set oLbl(0,1)=lblL2:Set oLbl(0,2)=lblL3:Set oLbl(0,3)=lblL4:Set oLbl(0,4)=lblL5
Set oLbl(1,0)=lblR1:Set oLbl(1,1)=lblR2:Set oLbl(1,2)=lblR3:Set oLbl(1,3)=lblR4:Set oLbl(1,4)=lblR5
Set oTxt(0,0)=txtL1:Set oTxt(0,1)=txtL2:Set oTxt(0,2)=txtL3:Set oTxt(0,3)=txtL4:Set oTxt(0,4)=txtL5
Set oTxt(1,0)=txtR1:Set oTxt(1,1)=txtR2:Set oTxt(1,2)=txtR3:Set oTxt(1,3)=txtR4:Set oTxt(1,4)=txtR5
end sub
nanti pada event click suatu commandbutton bisa berisi :
Dim sJari As String,sSisi As String,sSisiTeks As String
Dim lSisi As Long,lNo As Long
If LenB(lblFolder.Caption) <> 0 Then
lblNamaJari.Caption = "Loop"
sJari = lblJari.Caption
lNo = CLng(Mid$(sJari, 2, 1)) - 1
If Left$(sJari, 1) = "R" Then
lSisi = 1
sSisi = Left$(sJari, 1)
sSisiTeks = "kanan"
Else
lSisi = 0
sSisi = vbNullString
sSisiTeks = "kiri"
End If
lblKeterangan.Caption =
Replace$(sKet, "%s", sSisiTeks)
imgC1.Picture = LoadPicture(vbNullString)
imgC1.Picture = LoadPicture(Replace$(sfile1, "%s", sSisi))
imgC2.Picture = LoadPicture(vbNullString)
imgC2.Picture = LoadPicture(Replace$(sfile2, "%s", sSisi))
oLbl(lSisi, lNo).Caption = Left$(sJari, 1)
oTxt(lSisi, lNo).SetFocus
Else
MsgBox ("Tentukan Folder Terlebih Dahulu")
End If
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.com >
>
>Trimakasih banyak Mas Kid,
>
>Kode aslinya ada 10, L1F - L5F dan R1F - R5F
>ImgBoxnya ada 2, imgC1 dan imgC2
>Terdapat juga lblNamaJari, tapi ini sifatnya fix, tidak berubah meskipun berganti L1F sampai R5F
>Tujuan saya biar sederhana, termasuk contoh kasusnya jadi saya sederhanakan.
>Berikut solusi dari Mas Kid yg udah disesuaikan data aslinya, kalo ada yg kurang tepat mohon bersedia mengkoreksi lagi:
>
>
>Dim oLbl(1,4)As Control,oTxt(1,4)As Control 'ganti control dengan msforms.label atau msforms.textbox jika object ada di worksheet
>Dim sJari As String,sSisi As String,sSisiTeks As String
>Dim lSisi As Long,lNo As Long
>
>Set oLbl(0,0)=lblL1:Set oLbl(0,1)=lblL2:Set oLbl(0,2)=lblL3:Set oLbl(0,3)=lblL4:Set oLbl(0,4)=lblL5
>Set oLbl(1,0)=lblR1:Set oLbl(1,1)=lblR2:Set oLbl(1,2)=lblR3:Set oLbl(1,3)=lblR4:Set oLbl(1,4)=lblR5
>Set oTxt(0,0)=txtL1:Set oTxt(0,1)=txtL2:Set oTxt(0,2)=txtL3:Set oTxt(0,3)=txtL4:Set oTxt(0,4)=txtL5
>Set oTxt(1,0)=txtR1:Set oTxt(1,1)=txtR2:Set oTxt(1,2)=txtR3:Set oTxt(1,3)=txtR4:Set oTxt(1,4)=txtR5
>sKet = "Berbentuk
seperti rambut ikal. Pada tangan %s memiliki arus alur ke%s."
>sfile1 = "C:\Tipe Jari\%sL1.jpg"
>sfile2 = "C:\Tipe Jari\%sL2.jpg"
>
>If LenB(lblFolder.Caption) <> 0 Then
> lblNamaJari.Caption = "Loop"
> sJari = lblJari.Caption
> lNo = CLng(Mid$(sJari, 2, 1)) - 1
> If Left$(sJari, 1) = "R" Then
> lSisi = 1
> sSisi = Left$(sJari, 1)
> sSisiTeks = "kanan"
> Else
> lSisi = 0
> sSisi = vbNullString
> sSisiTeks = "kiri"
> End If
> lblKeterangan.Caption =
Replace$(sKet, "%s", sSisiTeks)
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture(Replace$(sfile1, "%s", sSisi))
> imgC2.Picture = LoadPicture(vbNullString)
> imgC2.Picture = LoadPicture(Replace$(sfile2, "%s", sSisi))
> oLbl(lSisi, lNo).Caption = Left$(sJari, 1)
> oTxt(lSisi, lNo).SetFocus
>
>Else
> MsgBox ("Tentukan Folder Terlebih Dahulu")
>End If
>
>
>Wassalam
>
>
>
>
>________________________________
> From: Mr. Kid <mr.nmkid@gmail.com >
>To: BeExcel <belajar-excel@yahoogroups.com >
>Sent: Saturday, March 30, 2013 2:07 PM
>Subject: Re: [belajar-excel] Penyederhanaan kode VBA yg berulang-ulang
>
>
>
>
>Coba :
>
>dim oLbl(1,2) as control,oTxt(1,2) as control 'ganti control dengan msforms.label atau msforms.textbox jika object ada di worksheet
>
>dim sKet as string, sFile as string, sJari as string,sSisi as string,sSisiTeks as string
>
>dim lSisi as long, lNo as long
>
>
>set olbl(0,0)=lblL1:set olbl(0,1)=lblL2:set olbl(0,2)=lblL3
>set olbl(1,0)=lblr1:set olbl(1,1)=lblr2:set olbl(1,2)=lblr3
>set otxt(0,0)=txtL1:set otxt(0,1)=txtL2:set otxt(0,2)=txtL3
>set otxt(1,0)=txtr1:set otxt(1,1)=txtr2:set otxt(1,2)=txtr3
>
>sket="Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur ke%s."
>sfile="C:\Tipe Jari\%sL1.jpg"
>
>If lenb(lblFolder.Caption) <>0 Then
>
> sjari=lblJari.Caption
>
> lno=clng(mid$(sjari,2,1))-1
>
> if left$(sjari,1)="R" then
>
> lsisi=1
> ssisi=left$(sjari,1)
>
> ssisiteks="kanan"
>
> else
>
> lsisi=0
>
> ssisi=vbnullstring
>
> ssisiteks="kiri"
>
> endif
> lblKeterangan.Caption = replace$(sket,"%s",ssisiteks)
> imgC1.Picture = LoadPicture(vbNullString)
> imgC1.Picture = LoadPicture(replace$(sfile,"%s",ssisi))
>
> olbl(lsisi,lno).caption=left$(sjari,1)
>
> otxt(lsisi,lno).setfocus
>
>else
> MsgBox ("Tentukan Folder Terlebih Dahulu")
>
>endif
>
>
>
>
>Wassalam,
>Kid.
>
>
>
>2013/3/30 lapendosol opik <lapendosol@yahoo.com >
>
>
>>
>>Dear master excel
>>Saya memiliki kode VBA, dimana isi tiap beberapa baris adalah sama dengan lainnya.
>>Bagaimana cara menyederhanakan kode VBA tersebut agar lebih simple, berikut kode VBAnya:
>>
>>
>>Private Sub cmdL_Click()
>>If lblFolder.Caption = "" Then
>>MsgBox ("Tentukan Folder Terlebih Dahulu")
>>ElseIf lblJari.Caption = "L1F" Then
>> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kiri memiliki arus alur kekiri."
>> imgC1.Picture = LoadPicture(vbNullString)
>> imgC1.Picture = LoadPicture("C:92;Tipe
Jari\L1.jpg")
>> lblL1.Caption = "L"
>> txtL1.SetFocus
>>ElseIf lblJari.Caption = "L2F" Then
>> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kiri memiliki arus alur kekiri."
>> imgC1.Picture = LoadPicture(vbNullString)
>> imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
>> lblL2.Caption = "L"
>> txtL2.SetFocus
>>ElseIf lblJari.Caption = "L3F" Then
>> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kiri memiliki arus alur kekiri."
>> imgC1.Picture = LoadPicture(vbNullString)
>> imgC1.Picture = LoadPicture("C:92;Tipe Jari\L1.jpg")
>> lblL3.Caption = "L"
>>
txtL3.SetFocus
>>
>>ElseIf lblJari.Caption = "R1F" Then
>> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kanan memiliki arus alur kekanan."
>> imgC1.Picture = LoadPicture(vbNullString)
>> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
>> lblR1.Caption = "L"
>> txtR1.SetFocus
>>ElseIf lblJari.Caption = "R2F" Then
>> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kanan memiliki arus alur kekanan."
>> imgC1.Picture = LoadPicture(vbNullString)
>> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
>> lblR2.Caption = "L"
>> txtR2.SetFocus
>>ElseIf lblJari.Caption = "R3F" Then
>> lblKeterangan.Caption = "Berbentuk seperti rambut ikal. Pada tangan kanan memiliki arus alur kekanan."
>> imgC1.Picture = LoadPicture(vbNullString)
>> imgC1.Picture = LoadPicture("C:92;Tipe Jari\RL1.jpg")
>> lblR3.Caption = "L"
>> txtR3.SetFocus
>>End If
>>End Sub
>>
>>
>>Yang berwarna ungu adalah bagian yang diulang-ulang untuk tangan kiri, dan
yang berwarna hijau adalah bagian yang diulang-ulang untuk tangan kanan.
>>Mohon pencerahannya untuk kasus seperti ini
>>Sebelumnya saya ucapkan banyak terimakasih
>>Wassalam
>>
>
>
>
Ini untuk Private Sub cmdL_Click() yang digunakan/diganti-
sKet = "Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur ke%s."
sfile1 = "C:\
sfile2 = "C:\
lblNamaJari.
sJari = lblJari.Caption
lNo = CLng(Mid$(sJari, 2, 1)) - 1
If Left$(sJari, 1) = "R" Then
lSisi = 1
sSisi = Left$(sJari, 1)
sSisiTeks = "kanan"
Else
lSisi = 0
sSisi = vbNullString
sSisiTeks = "kiri"
End If
'pada bagian diatasga tau kode mana yang mengatakan bahwa lblL1 - lblL5 dan lblR1 - lblR5 memiliki nilai "L"
Misal command ke-dua Private Sub cmdRL_Click(
sKet = "Berbentuk kruwel-kruwel atau gimana. Pada tangan %s memiliki arus alur keKANAN."
sfile1 = "C:\
sfile2 = "C:\
lblNamaJari.
lblL1 - lblL5 dan lblR1 - lblR5.Caption= "RL"
sKet yg cmdRL ini, keterangannya kebalikan dari cmdL
Misal command ke-tiga Private Sub cmdTA_Click(
sKet = "Turunan dari tipe Arch menuju Loop."
sfile1 = "C:\
sfile2 = "C:\
lblNamaJari.
Masih ada:
Private Sub cmdPE_Click(
Private Sub cmdPE-R_Click(
Private SubcmdPE-DL_
dll
Trimakasih
____________
From: Mr. Kid <mr.nmkid@gmail.
To: BeExcel <belajar-excel@
Sent: Saturday, March 30, 2013 4:02 PM
Subject: Re: [belajar-excel] Penyederhanaan kode VBA yg berulang-ulang
Andaikan object akan terus digunakan sampai userform ditutup, maka proses set object array bisa dilakukan diawal (saat initialize misalnya). Untuk kebutuhan ini, maka variabel dinaikkan scope-nya dari scope prosedur menjadi scope module.
Contoh :
Pada userform (lembar code userform) beri deklarasi veriabel seperti baris dibawah ini, sebelum baris deklarasi prosedur pertama yang ada :
private oLbl(1,4) as label, oTxt(1,4) as textbox
Kemudian, karena ada beberapa variabel yang akan selalu tetap nilainya sepanjang userform masih bekerja, maka diberi deklarasi variabel yang diset konstan. Misal variabel sKet, sFile1, sFile2
Biasanya, beginilah cara penggunaan variabel yang diset konstan nilainya.
private const sKet as string = "Berbentuk seperti rambut ikal. Pada tangan %s memiliki arus alur ke%s."
private const sFile1 as string = "C:\
private const sFile2 as string = "C:\
proses set object dilakukan pada event initialize userform :
private sub userform_initialize
Set oLbl(0,0)=lblL1:
Set oLbl(1,0)=lblR1:
Set oTxt(0,0)=txtL1:
Set oTxt(1,0)=txtR1:
end sub
nanti pada event click suatu commandbutton bisa berisi :
Dim sJari As String,sSisi As String,sSisiTeks As String
Dim lSisi As Long,lNo As Long
If LenB(lblFolder.
lblNamaJari.
sJari = lblJari.Caption
lNo = CLng(Mid$(sJari, 2, 1)) - 1
If Left$(sJari, 1) = "R" Then
lSisi = 1
sSisi = Left$(sJari, 1)
sSisiTeks = "kanan"
Else
lSisi = 0
sSisi = vbNullString
sSisiTeks = "kiri"
End If
lblKeterangan.
Replace$(sKet, "%s"
imgC1.Picture = LoadPicture(
imgC1.Picture = LoadPicture(
imgC2.Picture = LoadPicture(
imgC2.Picture = LoadPicture(
oLbl(lSisi, lNo).Caption = Left$(sJari, 1)
oTxt(lSisi, lNo).SetFocus
Else
MsgBox ("Tentukan Folder Terlebih Dahulu"
End If
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.
>
>Trimakasih banyak Mas Kid,
>
>Kode aslinya ada 10, L1F - L5F dan R1F - R5F
>ImgBoxnya ada 2, imgC1 dan imgC2
>Terdapat juga lblNamaJari, tapi ini sifatnya fix, tidak berubah meskipun berganti L1F sampai R5F
>Tujuan saya biar sederhana, termasuk contoh kasusnya jadi saya sederhanakan.
>Berikut solusi dari Mas Kid yg udah disesuaikan data aslinya, kalo ada yg kurang tepat mohon bersedia mengkoreksi lagi:
>
>
>Dim oLbl(1,4)As Control,oTxt(
>Dim sJari As String,sSisi As String,sSisiTeks As String
>Dim lSisi As Long,lNo As Long
>
>Set oLbl(0,0)=lblL1:
>Set oLbl(1,0)=lblR1:
>Set oTxt(0,0)=txtL1:
>Set oTxt(1,0)=txtR1:
>sKet = "Berbentuk
seperti rambut ikal. Pada tangan %s memiliki arus alur ke%s."
>sfile1 = "C:\
>sfile2 = "C:\
>
>If LenB(lblFolder.
> lblNamaJari.
> sJari = lblJari.Caption
> lNo = CLng(Mid$(sJari, 2, 1)) - 1
> If Left$(sJari, 1) = "R" Then
> lSisi = 1
> sSisi = Left$(sJari, 1)
> sSisiTeks = "kanan"
> Else
> lSisi = 0
> sSisi = vbNullString
> sSisiTeks = "kiri"
> End If
> lblKeterangan.
Replace$(sKet, "%s"
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
> imgC2.Picture = LoadPicture(
> imgC2.Picture = LoadPicture(
> oLbl(lSisi, lNo).Caption = Left$(sJari, 1)
> oTxt(lSisi, lNo).SetFocus
>
>Else
> MsgBox ("Tentukan Folder Terlebih Dahulu"
>End If
>
>
>Wassalam
>
>
>
>
>________
> From: Mr. Kid <mr.nmkid@gmail.
>To: BeExcel <belajar-excel@
>Sent: Saturday, March 30, 2013 2:07 PM
>Subject: Re: [belajar-excel] Penyederhanaan kode VBA yg berulang-ulang
>
>
>
>
>Coba :
>
>dim oLbl(1,2) as control,oTxt(
>
>dim sKet as string, sFile as string, sJari as string,sSisi as string,sSisiTeks as string
>
>dim lSisi as long, lNo as long
>
>
>set olbl(0,0)=lblL1:
>set olbl(1,0)=lblr1:
>set otxt(0,0)=txtL1:
>set otxt(1,0)=txtr1:
>
>sket="
>sfile="
>
>If lenb(lblFolder.
>
> sjari=lblJari.
>
> lno=clng(mid$
>
> if left$(sjari,
>
> lsisi=1
> ssisi=left$(
>
> ssisiteks="
>
> else
>
> lsisi=0
>
> ssisi=vbnullstring
>
> ssisiteks="
>
> endif
> lblKeterangan.
> imgC1.Picture = LoadPicture(
> imgC1.Picture = LoadPicture(
>
> olbl(lsisi,lno)
>
> otxt(lsisi,lno)
>
>else
> MsgBox ("Tentukan Folder Terlebih Dahulu"
>
>endif
>
>
>
>
>Wassalam,
>Kid.
>
>
>
>2013/3/30 lapendosol opik <lapendosol@yahoo.
>
>
>>
>>Dear master excel
>>Saya memiliki kode VBA, dimana isi tiap beberapa baris adalah sama dengan lainnya.
>>Bagaimana cara menyederhanakan kode VBA tersebut agar lebih simple, berikut kode VBAnya:
>>
>>
>>Private Sub cmdL_Click()
>>If lblFolder.Caption = "" Then
>>MsgBox ("Tentukan Folder Terlebih Dahulu"
>>ElseIf lblJari.Caption = "L1F" Then
>> lblKeterangan.
>> imgC1.Picture = LoadPicture(
>> imgC1.Picture = LoadPicture(
Jari\L1.
>> lblL1.Caption = "L"
>> txtL1.SetFocus
>>ElseIf lblJari.Caption = "L2F" Then
>> lblKeterangan.
>> imgC1.Picture = LoadPicture(
>> imgC1.Picture = LoadPicture(
>> lblL2.Caption = "L"
>> txtL2.SetFocus
>>ElseIf lblJari.Caption = "L3F" Then
>> lblKeterangan.
>> imgC1.Picture = LoadPicture(
>> imgC1.Picture = LoadPicture(
>> lblL3.Caption = "L"
>>
txtL3.SetFocus
>>
>>ElseIf lblJari.Caption = "R1F" Then
>> lblKeterangan.
>> imgC1.Picture = LoadPicture(
>> imgC1.Picture = LoadPicture(
>> lblR1.Caption = "L"
>> txtR1.SetFocus
>>ElseIf lblJari.Caption = "R2F" Then
>> lblKeterangan.
>> imgC1.Picture = LoadPicture(
>> imgC1.Picture = LoadPicture(
>> lblR2.Caption = "L"
>> txtR2.SetFocus
>>ElseIf lblJari.Caption = "R3F" Then
>> lblKeterangan.
>> imgC1.Picture = LoadPicture(
>> imgC1.Picture = LoadPicture(
>> lblR3.Caption = "L"
>> txtR3.SetFocus
>>End If
>>End Sub
>>
>>
>>Yang berwarna ungu adalah bagian yang diulang-ulang untuk tangan kiri, dan
yang berwarna hijau adalah bagian yang diulang-ulang untuk tangan kanan.
>>Mohon pencerahannya untuk kasus seperti ini
>>Sebelumnya saya ucapkan banyak terimakasih
>>Wassalam
>>
>
>
>
Fri Mar 29, 2013 7:33 pm (PDT) . Posted by:
"Alfin Ginting" alfin_ginting
siang belajar -excel saya ada sedikit masalah nie dengan pencarian data .
saya punya data yg ingin saya searcing berdasarkan tanggal dan waktuny ..
kemudian hasilny dipindahkan ke sheet sebelahnya (data terlampir )
mohon mudah2an bisa membantu saya
terima kasih
saya punya data yg ingin saya searcing berdasarkan tanggal dan waktuny ..
kemudian hasilny dipindahkan ke sheet sebelahnya (data terlampir )
mohon mudah2an bisa membantu saya
terima kasih
Fri Mar 29, 2013 9:58 pm (PDT) . Posted by:
"Mr. Kid" nmkid.family@ymail.com
Hai Alfin,
Kasus filter data biasanya dikomputasi dengan array formula filtering (bisa
lihat-lihat disini<http://excel-mr-kid.blogspot.com/2011/04/formula-filter-data-filtering-formula.html >
).
Dropdown pilihan dapat dibuat dengan memanfaatkan fitur Data Validation.
Fitur Data Validation juga bisa digunakan untuk membatasi nilai yang akan
di-entry.
Nama range (named range atau defined names) bisa menjadi alat bantu untuk
bisa merujuk suatu area range secara dinamis dengan mengisi bagian refers
to di nama range tersebut dengan formula yang menghasilkan suatu rujukan
seperti Index [non volatile function], Offset, atau Indirect.
Nama range yang dirujuk dinamis ini bisa digunakan sebagai source untuk
dropdown dengan data validation ataupun digunakan oleh chart, sehingga akan
tampak bahwa setiap kali jumlah record berubah, maka hasilnya juga akan
ikut berubah.
Fitur pivot table bisa digunakan untuk mendapatkan daftar unique list yang
kemudian bisa dirujuk dengan nama range dinamis untuk menjadi isi suatu
dropdown list. Syaratnya, pivot harus di-refresh ketika ada pengubahan
nilai data melalui ribbon Data -> refresh atau refresh all
Pivot table juga bisa disertai dengan chart yang akan dinamis mengikuti
data yang ditampilkan dalam pivot table.
File terlampir.
Wassalam,
Kid.
2013/3/30 Alfin Ginting <alfin_ginting@yahoo.co.id >
> **
>
>
> siang belajar -excel saya ada sedikit masalah nie dengan pencarian data .
> saya punya data yg ingin saya searcing berdasarkan tanggal dan waktuny ..
> kemudian hasilny dipindahkan ke sheet sebelahnya (data terlampir )
> mohon mudah2an bisa membantu saya
>
> terima kasih
>
> _
>
Kasus filter data biasanya dikomputasi dengan array formula filtering (bisa
lihat-lihat disini<http://excel-
).
Dropdown pilihan dapat dibuat dengan memanfaatkan fitur Data Validation.
Fitur Data Validation juga bisa digunakan untuk membatasi nilai yang akan
di-entry.
Nama range (named range atau defined names) bisa menjadi alat bantu untuk
bisa merujuk suatu area range secara dinamis dengan mengisi bagian refers
to di nama range tersebut dengan formula yang menghasilkan suatu rujukan
seperti Index [non volatile function], Offset, atau Indirect.
Nama range yang dirujuk dinamis ini bisa digunakan sebagai source untuk
dropdown dengan data validation ataupun digunakan oleh chart, sehingga akan
tampak bahwa setiap kali jumlah record berubah, maka hasilnya juga akan
ikut berubah.
Fitur pivot table bisa digunakan untuk mendapatkan daftar unique list yang
kemudian bisa dirujuk dengan nama range dinamis untuk menjadi isi suatu
dropdown list. Syaratnya, pivot harus di-refresh ketika ada pengubahan
nilai data melalui ribbon Data -> refresh atau refresh all
Pivot table juga bisa disertai dengan chart yang akan dinamis mengikuti
data yang ditampilkan dalam pivot table.
File terlampir.
Wassalam,
Kid.
2013/3/30 Alfin Ginting <alfin_ginting@
> **
>
>
> siang belajar -excel saya ada sedikit masalah nie dengan pencarian data .
> saya punya data yg ingin saya searcing berdasarkan tanggal dan waktuny ..
> kemudian hasilny dipindahkan ke sheet sebelahnya (data terlampir )
> mohon mudah2an bisa membantu saya
>
> terima kasih
>
> _
>
Sat Mar 30, 2013 1:36 am (PDT) . Posted by:
"lapendosol opik" lapendosol
Dear Master Excel
Saya punya data, dimana data tersebut berupa angka dan persentase yang dicopy dari file PDF
Setelah dimasukkan (paste) ke file Excel dan dipisahkan, angka tersebut tidak dapat dijumlahkan, padahal sudah diganti format cells nya.
Berikut saya lampirkan data yang saya maksud, semoga para Master Excel bersedia luangkan waktu buat membantu masalah saya.
Sebelumnya saya ucapkan banyak terimakasih
Wassalam
Opik
Saya punya data, dimana data tersebut berupa angka dan persentase yang dicopy dari file PDF
Setelah dimasukkan (paste) ke file Excel dan dipisahkan, angka tersebut tidak dapat dijumlahkan, padahal sudah diganti format cells nya.
Berikut saya lampirkan data yang saya maksud, semoga para Master Excel bersedia luangkan waktu buat membantu masalah saya.
Sebelumnya saya ucapkan banyak terimakasih
Wassalam
Opik
Sat Mar 30, 2013 1:43 am (PDT) . Posted by:
"Mr. Kid" nmkid.family@ymail.com
Coba beri perkalian dengan 1 didalam formula yang menggunakan fungsi
kelompok text agar terkonversi menjadi data bertipe numerik.
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.com >
> **
>
>
> Dear Master Excel
> Saya punya data, dimana data tersebut berupa angka dan persentase yang
> dicopy dari file PDF
> Setelah dimasukkan (paste) ke file Excel dan dipisahkan, angka tersebut
> tidak dapat dijumlahkan, padahal sudah diganti format cells nya.
> Berikut saya lampirkan data yang saya maksud, semoga para Master Excel
> bersedia luangkan waktu buat membantu masalah saya.
> Sebelumnya saya ucapkan banyak terimakasih
> Wassalam
> Opik
>
>
>
kelompok text agar terkonversi menjadi data bertipe numerik.
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.
> **
>
>
> Dear Master Excel
> Saya punya data, dimana data tersebut berupa angka dan persentase yang
> dicopy dari file PDF
> Setelah dimasukkan (paste) ke file Excel dan dipisahkan, angka tersebut
> tidak dapat dijumlahkan, padahal sudah diganti format cells nya.
> Berikut saya lampirkan data yang saya maksud, semoga para Master Excel
> bersedia luangkan waktu buat membantu masalah saya.
> Sebelumnya saya ucapkan banyak terimakasih
> Wassalam
> Opik
>
>
>
Sat Mar 30, 2013 1:54 am (PDT) . Posted by:
"lapendosol opik" lapendosol
Trimakasih lagi yg banyak Mas Kid
Berhasil
Wassalam,
________________________________
From: Mr. Kid <mr.nmkid@gmail.com >
To: BeExcel <belajar-excel@yahoogroups.com >
Sent: Saturday, March 30, 2013 3:43 PM
Subject: Re: [belajar-excel] Copy data angka dari file PDF
Coba beri perkalian dengan 1 didalam formula yang menggunakan fungsi kelompok text agar terkonversi menjadi data bertipe numerik.
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.com >
>
>Dear Master Excel
>Saya punya data, dimana data tersebut berupa angka dan persentase yang dicopy dari file PDF
>Setelah dimasukkan (paste) ke file Excel dan dipisahkan, angka tersebut tidak dapat dijumlahkan, padahal sudah diganti format cells nya.
>Berikut saya lampirkan data yang saya maksud, semoga para Master Excel bersedia luangkan waktu buat membantu masalah saya.
>Sebelumnya saya ucapkan banyak terimakasih
>Wassalam
>Opik
>
Berhasil
Wassalam,
____________
From: Mr. Kid <mr.nmkid@gmail.
To: BeExcel <belajar-excel@
Sent: Saturday, March 30, 2013 3:43 PM
Subject: Re: [belajar-excel] Copy data angka dari file PDF
Coba beri perkalian dengan 1 didalam formula yang menggunakan fungsi kelompok text agar terkonversi menjadi data bertipe numerik.
Wassalam,
Kid.
2013/3/30 lapendosol opik <lapendosol@yahoo.
>
>Dear Master Excel
>Saya punya data, dimana data tersebut berupa angka dan persentase yang dicopy dari file PDF
>Setelah dimasukkan (paste) ke file Excel dan dipisahkan, angka tersebut tidak dapat dijumlahkan, padahal sudah diganti format cells nya.
>Berikut saya lampirkan data yang saya maksud, semoga para Master Excel bersedia luangkan waktu buat membantu masalah saya.
>Sebelumnya saya ucapkan banyak terimakasih
>Wassalam
>Opik
>
Sat Mar 30, 2013 2:47 am (PDT) . Posted by:
"Mulki" mulki_akbar
Assalamu'alaikum wr. wb.
Semangat Pagi rekan2 Be-XL-ers,
Cuma mau tanya pertanyaan simple aja, pernah saya mendapati gaya pembuatan formula simple seperti penjumlahan, pengurangan, perkalian dlsbt yg terkadang saya dapati penggunaan tanda (+) di depannya, contoh sbb :
formula 1 : =+A2*B2
formula 2 : =A2*B2
kedua hasil dari formula tersbt adalah sama, bisakah rekan2 disini menjelaskan penggunaan tanda (+) tersbt dan kelebihan serta kekurangan jika menggunakannya ?
Terimakasih atas pencerahannya.
Wassalam,
mulki
Semangat Pagi rekan2 Be-XL-ers,
Cuma mau tanya pertanyaan simple aja, pernah saya mendapati gaya pembuatan formula simple seperti penjumlahan, pengurangan, perkalian dlsbt yg terkadang saya dapati penggunaan tanda (+) di depannya, contoh sbb :
formula 1 : =+A2*B2
formula 2 : =A2*B2
kedua hasil dari formula tersbt adalah sama, bisakah rekan2 disini menjelaskan penggunaan tanda (+) tersbt dan kelebihan serta kekurangan jika menggunakannya ?
Terimakasih atas pencerahannya.
Wassalam,
mulki
Sat Mar 30, 2013 3:40 am (PDT) . Posted by:
"lapendosol opik" lapendosol
Sambil menunggu para master excel yang lain, saya coba bantu jelaskan
formula 1 : =+A2*B2, mungkin artinya: Formula asli (A2*B2) dikalikan dengan tanda positif (+). Angka berapapun kalau dikali dengan tanda positif (+) maka hasilnya adalah angka itu sendiri, makanya hasil dari formula 1 sama dengan hasil formula 2 (=A2*B2).
Sebaliknya jika diberi tanda negatif (-) hasilnya akan berbeda. Misal formula 1 : =-A2*B2
Artinya: Formula asli (A2*B2) dikalikan dengan tanda negatif (-). Angka berapapun kalau dikali dengan tanda negatif (-), maka hasilnya akan memiliki tanda kebalikan dari angka awalnya.
Saya rasa pada formula 1 dengan disisipkan tanda positif (+) tidak ada kelebihannya, kelemahannya malah ada, kita jadi lebih lambat sepersekian detik untuk mengetik/menyisipkan tanda positif pada rumus.
Semoga membantu ya
Wassalam,
________________________________
From: Mulki <mulki@aop.component.astra.co.id >
To: belajar-excel@yahoogroups.com
Sent: Saturday, March 30, 2013 4:32 PM
Subject: [belajar-excel] fungsi penggunaan tanda (+)
Assalamu'alaikum wr. wb.
Semangat Pagi rekan2 Be-XL-ers,
Cuma mau tanya pertanyaan simple aja, pernah saya
mendapati gaya pembuatan formula simple seperti penjumlahan, pengurangan,
perkalian dlsbt yg terkadang saya dapati penggunaan tanda (+) di depannya,
contoh sbb :
formula 1 : =+A2*B2
formula 2 : =A2*B2
kedua hasil dari formula
tersbt adalah sama, bisakah rekan2 disini menjelaskan penggunaan tanda (+)
tersbt dan kelebihan serta kekurangan jika menggunakannya ?
Terimakasih atas pencerahannya.
Wassalam,
mulki
formula 1 : =+A2*B2, mungkin artinya: Formula asli (A2*B2) dikalikan dengan tanda positif (+). Angka berapapun kalau dikali dengan tanda positif (+) maka hasilnya adalah angka itu sendiri, makanya hasil dari formula 1 sama dengan hasil formula 2 (=A2*B2).
Sebaliknya jika diberi tanda negatif (-) hasilnya akan berbeda. Misal formula 1 : =-A2*B2
Artinya: Formula asli (A2*B2) dikalikan dengan tanda negatif (-). Angka berapapun kalau dikali dengan tanda negatif (-), maka hasilnya akan memiliki tanda kebalikan dari angka awalnya.
Saya rasa pada formula 1 dengan disisipkan tanda positif (+) tidak ada kelebihannya, kelemahannya malah ada, kita jadi lebih lambat sepersekian detik untuk mengetik/menyisipka
Semoga membantu ya
Wassalam,
____________
From: Mulki <mulki@aop.component
To: belajar-excel@
Sent: Saturday, March 30, 2013 4:32 PM
Subject: [belajar-excel] fungsi penggunaan tanda (+)
Assalamu'
Semangat Pagi rekan2 Be-XL-ers,
Cuma mau tanya pertanyaan simple aja, pernah saya
mendapati gaya pembuatan formula simple seperti penjumlahan, pengurangan,
perkalian dlsbt yg terkadang saya dapati penggunaan tanda (+) di depannya,
contoh sbb :
formula 1 : =+A2*B2
formula 2 : =A2*B2
kedua hasil dari formula
tersbt adalah sama, bisakah rekan2 disini menjelaskan penggunaan tanda (+)
tersbt dan kelebihan serta kekurangan jika menggunakannya ?
Terimakasih atas pencerahannya.
Wassalam,
mulki
GROUP FOOTER MESSAGE
---------------------------------------------------------------------
bergabung ke milis (subscribe), kirim mail kosong ke:
belajar-excel-subscribe@yahoogroups.com
posting ke milis, kirimkan ke:
belajar-excel@yahoogroups.com
berkunjung ke web milis
http://tech.groups.yahoo.com/group/belajar-excel/messages
melihat file archive / mendownload lampiran
http://www.mail-archive.com/belajar-excel@yahoogroups.com/
atau (sejak 25-Apr-2011) bisa juga di :
http://milis-belajar-excel.1048464.n5.nabble.com/
menghubungi moderators & owners: belajar-excel-owner@yahoogroups.com
keluar dari membership milis (UnSubscribe):
kirim mail kosong ke belajar-excel-unsubscribe@yahoogroups.com
---------------------------------------------------------------------
bergabung ke milis (subscribe), kirim mail kosong ke:
belajar-excel-subscribe@yahoogroups.com
posting ke milis, kirimkan ke:
belajar-excel@yahoogroups.com
berkunjung ke web milis
http://tech.groups.yahoo.com/group/belajar-excel/messages
melihat file archive / mendownload lampiran
http://www.mail-archive.com/belajar-excel@yahoogroups.com/
atau (sejak 25-Apr-2011) bisa juga di :
http://milis-belajar-excel.1048464.n5.nabble.com/
menghubungi moderators & owners: belajar-excel-owner@yahoogroups.com
keluar dari membership milis (UnSubscribe):
kirim mail kosong ke belajar-excel-unsubscribe@yahoogroups.com
---------------------------------------------------------------------
Tidak ada komentar:
Posting Komentar