Jumat, 14 April 2017

[belajar-excel] Digest Number 4158

3 Messages

Digest #4158
1a
Re: Melanjutkan Looping by "Mr. Kid" nmkid.family@ymail.com
1b
Re: Melanjutkan Looping by "Edo Hanggoro" edo_hanggoro

Messages

Fri Apr 14, 2017 4:38 am (PDT) . Posted by:

"Mr. Kid" nmkid.family@ymail.com

hmmm...

Mungkin sedang liburan...

Misal : Proses mengolah nilai x dari 1 sampai 10.
Prosesnya menggunakan loop for next misalnya, maka akan berbentuk seperti
ini :

dim x as long
for x=1 to 10
'disini proses yang dilakukan pada setiap nilai x, yang jelas, x akan
dimulai dari 1, lalu ke-2, dst sampai ke-10
next x

Kasus prosesnya :
1. Hanya ingin memproses x dari 5 sampai 10 saja
Cara 1 : loop langsung mulai dari 5
dim x as long
for x=5 to 10
'proses mengolah x diletakkan disini
next x

Cara 2 : loop tetap mulai dari 1 sampai 10 karena rentang ini tetap
dim x as long
for x=1 to 10
if x>=5 then 'kalau x lebih dari atau sama dengan 5 maka
'proses mengolah x bernilai 5,6,7,8,9,10 bergantian
endif
next x
*** Tidak perlu pakai else, karena memang prosesnya hanya akan mengolah
yang 5 sampai 10

2. Hanya ingin memproses x dari 1 sampai 4 saja
Cara 1 : seperti cara 1 di atas, tapi pakai for x=1 to 4
Cara 2 : seperti cara 2 di atas, tapi if-nya berbunyi if x<=4 then
*** Tidak perlu pakai else, karena memang prosesnya hanya akan mengolah
yang 1 sampai 4

3. Memproses 1 sampai 4 dengan proses 'a' dan untuk 5 sampai 10 dengan
proses 'b'
Yang ini pakai cara 2 :
dim x as long, y as long
for x=1 to 10
if x>=5 then 'jika x sebesar 5 atau lebih
'proses 'b' diletakkan disini, misalnya proses membuat nilai y
menjadi sebesar nilai x
y=x
else 'selainnya, yaitu jika x kurang dari 5 (bahasa lainnya,
jika x mulai dari 1 sampai 4 pada proses loop itu)
'proses 'a' diletakkan disini, misalnya proses membuat nilai y
menjadi bernilai pasti 5
y=5
endif
next x

4. Memproses 1 sampai 3 dengan proses 'c', 4 sampai 8 dengan proses 'd',
nilai 9 dan 10 diproses 'e'
dim x as long, y as long
for x=1 to 10
if x>=9 then
'proses 'e'
elseif x>=4 then
'proses 'd'
else
'proses 'c'
endif
next x

Bagaimana kalau proses 'e' adalah diprosedur bernama ProsesBernamaE, dan
proses 'd' di prosedur bernama ProsesBernamaD, dan proses 'c' adalah
membuat y pasti bernilai 0 ?
dim x as long, y as long
for x=1 to 10
if x>=9 then
'proses 'e', yaitu panggil prosedur bernama ProsesBernamaE.
'Kalau sudah selesai menjalankan proses 'e', maka proses
kembali lagi ke sini dan siap ke x selanjutnya
ProsesBernamaE
elseif x>=4 then
'proses 'd', yaitu panggil prosedur bernama ProsesBernamaD
'Kalau sudah selesai menjalankan proses 'd', maka proses
kembali lagi ke sini dan siap ke x selanjutnya
ProsesBernamaD
else
'proses 'c', membuat y bernilai 0, dan setelah itu, siap ke x
selanjutnya
y=0
endif
next x

Dengan begitu, proses bisa bercabang kemana-mana bukan ?
Cara di atas, yaitu meletakkan proses yang panjang disuatu prosedur
terpisah, lebih dianjurkan dibanding menulis proses panjang itu di dalam
blok IF atau meletakkannya dibagian lain dalam prosedur yang sama dengan
memanfaatkan GoSub return atau memanfaatkan Goto.

Yang perlu diingat, blok IF itu syntaxnya :
*** yang merah dan diapit [ dan ] bersifat optional alias jika dibutuhkan,
***
*** yang biru adalah required ***
*** yang latar kuning [ ... ] adalah bentuk elseif untuk kondisi3, 4, dst
sampai n-1 yang juga bersifat optional (karena diapit [ dan ]) ***
IF kondisi1 then
'proses kondisi1
[elseif kondisi2 then
'proses kondisi2
]
[.
.
.]
[elseif kondisiN then
'proses kondisiN
]
[else
'proses selain kondisi yang ada
]
End IF

Regards,
Kid

2017-04-13 14:19 GMT+07:00 Mr. Kid <mr.nmkid@gmail.com>:

> Hai Heru,
>
> Bisa lebih diperjelas ?
> Dari x=1 sampai 10 itu, pengennya di x=1 proses apa, x=2 proses apa dst
> gitu..
>
>
>
>
>
> 2017-04-13 8:18 GMT+07:00 'Heru Safrudin' fcprocessing.bisikediri@bisi.
> co.id [belajar-excel] <belajar-excel@yahoogroups.com>:
>
>>
>>
>> Yth. B-Exceller,
>>
>>
>>
>> Bagaimanakah caranya melewati/melanjutkan loop jika melewati kondisi
>> tertentu ?
>>
>> Misal:
>>
>>
>>
>> For x=1 to 10
>>
>> If x<5 then
>>
>> Harus melewati Next <----- Bagaimana biar bisa melewati "Next"
>>
>> Else
>>
>> NILAI = x
>>
>> End If
>>
>> Next
>>
>>
>>
>> Mohon bimbingannya
>>
>>
>>
>> Terima kasih
>>
>>
>>
>> Heru Safrudin
>>
>>
>>
>
>

Fri Apr 14, 2017 6:51 am (PDT) . Posted by:

"Edo Hanggoro" edo_hanggoro

Dear Mr.Kid,
Mantap sekali pencerahan dari Mr.Kid ini.Saya berharap bisa semahir Mr. Kid.
Regards
Edo

On Friday, April 14, 2017 6:38 PM, "'Mr. Kid' mr.nmkid@gmail.com [belajar-excel]" <belajar-excel@yahoogroups.com> wrote:


  hmmm...

Mungkin sedang liburan...

Misal : Proses mengolah nilai x dari 1 sampai 10.
Prosesnya menggunakan loop for next misalnya, maka akan berbentuk seperti ini :

dim x as long
for x=1 to 10
     'disini proses yang dilakukan pada setiap nilai x, yang jelas, x akan dimulai dari 1, lalu ke-2, dst sampai ke-10
next x

Kasus prosesnya :
1. Hanya ingin memproses x dari 5 sampai 10 saja
Cara 1 : loop langsung mulai dari 5
     dim x as long
     for x=5 to 10
            'proses mengolah x diletakkan disini
     next x

Cara 2 : loop tetap mulai dari 1 sampai 10 karena rentang ini tetap
    dim x as long
    for x=1 to 10
          if x>=5 then    'kalau x lebih dari atau sama dengan 5 maka
                  'proses mengolah x bernilai 5,6,7,8,9,10 bergantian
          endif
    next x
*** Tidak perlu pakai else, karena memang prosesnya hanya akan mengolah yang 5 sampai 10

2. Hanya ingin memproses x dari 1 sampai 4 saja
Cara 1 : seperti cara 1 di atas, tapi pakai for x=1 to 4
Cara 2 : seperti cara 2 di atas, tapi if-nya berbunyi if x<=4 then
*** Tidak perlu pakai else, karena memang prosesnya hanya akan mengolah yang 1 sampai 4

3. Memproses 1 sampai 4 dengan proses 'a' dan untuk 5 sampai 10 dengan proses 'b'
Yang ini pakai cara 2 :
   dim x as long, y as long
   for x=1 to 10
         if x>=5 then   'jika x sebesar 5 atau lebih
            'proses 'b' diletakkan disini, misalnya proses membuat nilai y menjadi sebesar nilai x
             y=x
         else      'selainnya, yaitu jika x kurang dari 5 (bahasa lainnya, jika x mulai dari 1 sampai 4 pada proses loop itu)
             'proses 'a' diletakkan disini, misalnya proses membuat nilai y menjadi bernilai pasti 5
             y=5
         endif
   next x

4. Memproses 1 sampai 3 dengan proses 'c', 4 sampai 8 dengan proses 'd', nilai 9 dan 10 diproses 'e'
   dim x as long, y as long
   for x=1 to 10           if x>=9 then
               'proses 'e'
           elseif x>=4 then
               'proses 'd'
           else
              'proses 'c'
           endif
   next x

Bagaimana kalau proses 'e' adalah diprosedur bernama ProsesBernamaE, dan proses 'd' di prosedur bernama ProsesBernamaD, dan proses 'c' adalah membuat y pasti bernilai 0 ?
   dim x as long, y as long
   for x=1 to 10           if x>=9 then
               'proses 'e', yaitu panggil prosedur bernama ProsesBernamaE.
               'Kalau sudah selesai menjalankan proses 'e', maka proses kembali lagi ke sini dan siap ke x selanjutnya
               ProsesBernamaE           elseif x>=4 then
               'proses 'd', yaitu panggil prosedur bernama ProsesBernamaD
               'Kalau sudah selesai menjalankan proses 'd', maka proses kembali lagi ke sini dan siap ke x selanjutnya
               ProsesBernamaD           else
              'proses 'c', membuat y bernilai 0, dan setelah itu, siap ke x selanjutnya
              y=0
           endif
   next x

Dengan begitu, proses bisa bercabang kemana-mana bukan ?
Cara di atas, yaitu meletakkan proses yang panjang disuatu prosedur terpisah, lebih dianjurkan dibanding menulis proses panjang itu di dalam blok IF atau meletakkannya dibagian lain dalam prosedur yang sama dengan memanfaatkan GoSub return atau memanfaatkan Goto.

Yang perlu diingat, blok IF itu syntaxnya :
*** yang merah dan diapit [ dan ] bersifat optional alias jika dibutuhkan, ***
*** yang biru adalah required ***
*** yang latar kuning [ ... ] adalah bentuk elseif untuk kondisi3, 4, dst sampai n-1 yang juga bersifat optional (karena diapit [ dan ]) ***
IF kondisi1 then
       'proses kondisi1

[elseif kondisi2 then
       'proses kondisi2
]
[.
.
.]
[elseif kondisiN then
        'proses kondisiN
]
[else
        'proses selain kondisi yang ada
]
End IF

Regards,
Kid

2017-04-13 14:19 GMT+07:00 Mr. Kid <mr.nmkid@gmail.com>:

Hai Heru,

Bisa lebih diperjelas ?
Dari x=1 sampai 10 itu, pengennya di x=1 proses apa, x=2 proses apa dst gitu..

2017-04-13 8:18 GMT+07:00 'Heru Safrudin' fcprocessing.bisikediri@bisi. co.id [belajar-excel] <belajar-excel@yahoogroups.com >:

  Yth.B-Exceller, Bagaimanakahcaranya melewati/melanjutkan loop jika melewati kondisi tertentu ?Misal: For x=1 to 10   If x<5 then Harus melewati Next   <----- Bagaimanabiar bisa melewati "Next"   Else     NILAI = x    End IfNext Mohonbimbingannya Terimakasih HeruSafrudin

#yiv3907903857 #yiv3907903857 -- #yiv3907903857ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv3907903857 #yiv3907903857ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv3907903857 #yiv3907903857ygrp-mkp #yiv3907903857hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv3907903857 #yiv3907903857ygrp-mkp #yiv3907903857ads {margin-bottom:10px;}#yiv3907903857 #yiv3907903857ygrp-mkp .yiv3907903857ad {padding:0 0;}#yiv3907903857 #yiv3907903857ygrp-mkp .yiv3907903857ad p {margin:0;}#yiv3907903857 #yiv3907903857ygrp-mkp .yiv3907903857ad a {color:#0000ff;text-decoration:none;}#yiv3907903857 #yiv3907903857ygrp-sponsor #yiv3907903857ygrp-lc {font-family:Arial;}#yiv3907903857 #yiv3907903857ygrp-sponsor #yiv3907903857ygrp-lc #yiv3907903857hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv3907903857 #yiv3907903857ygrp-sponsor #yiv3907903857ygrp-lc .yiv3907903857ad {margin-bottom:10px;padding:0 0;}#yiv3907903857 #yiv3907903857actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv3907903857 #yiv3907903857activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv3907903857 #yiv3907903857activity span {font-weight:700;}#yiv3907903857 #yiv3907903857activity span:first-child {text-transform:uppercase;}#yiv3907903857 #yiv3907903857activity span a {color:#5085b6;text-decoration:none;}#yiv3907903857 #yiv3907903857activity span span {color:#ff7900;}#yiv3907903857 #yiv3907903857activity span .yiv3907903857underline {text-decoration:underline;}#yiv3907903857 .yiv3907903857attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv3907903857 .yiv3907903857attach div a {text-decoration:none;}#yiv3907903857 .yiv3907903857attach img {border:none;padding-right:5px;}#yiv3907903857 .yiv3907903857attach label {display:block;margin-bottom:5px;}#yiv3907903857 .yiv3907903857attach label a {text-decoration:none;}#yiv3907903857 blockquote {margin:0 0 0 4px;}#yiv3907903857 .yiv3907903857bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv3907903857 .yiv3907903857bold a {text-decoration:none;}#yiv3907903857 dd.yiv3907903857last p a {font-family:Verdana;font-weight:700;}#yiv3907903857 dd.yiv3907903857last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv3907903857 dd.yiv3907903857last p span.yiv3907903857yshortcuts {margin-right:0;}#yiv3907903857 div.yiv3907903857attach-table div div a {text-decoration:none;}#yiv3907903857 div.yiv3907903857attach-table {width:400px;}#yiv3907903857 div.yiv3907903857file-title a, #yiv3907903857 div.yiv3907903857file-title a:active, #yiv3907903857 div.yiv3907903857file-title a:hover, #yiv3907903857 div.yiv3907903857file-title a:visited {text-decoration:none;}#yiv3907903857 div.yiv3907903857photo-title a, #yiv3907903857 div.yiv3907903857photo-title a:active, #yiv3907903857 div.yiv3907903857photo-title a:hover, #yiv3907903857 div.yiv3907903857photo-title a:visited {text-decoration:none;}#yiv3907903857 div#yiv3907903857ygrp-mlmsg #yiv3907903857ygrp-msg p a span.yiv3907903857yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv3907903857 .yiv3907903857green {color:#628c2a;}#yiv3907903857 .yiv3907903857MsoNormal {margin:0 0 0 0;}#yiv3907903857 o {font-size:0;}#yiv3907903857 #yiv3907903857photos div {float:left;width:72px;}#yiv3907903857 #yiv3907903857photos div div {border:1px solid #666666;height:62px;overflow:hidden;width:62px;}#yiv3907903857 #yiv3907903857photos div label {color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv3907903857 #yiv3907903857reco-category {font-size:77%;}#yiv3907903857 #yiv3907903857reco-desc {font-size:77%;}#yiv3907903857 .yiv3907903857replbq {margin:4px;}#yiv3907903857 #yiv3907903857ygrp-actbar div a:first-child {margin-right:2px;padding-right:5px;}#yiv3907903857 #yiv3907903857ygrp-mlmsg {font-size:13px;font-family:Arial, helvetica, clean, sans-serif;}#yiv3907903857 #yiv3907903857ygrp-mlmsg table {font-size:inherit;font:100%;}#yiv3907903857 #yiv3907903857ygrp-mlmsg select, #yiv3907903857 input, #yiv3907903857 textarea {font:99% Arial, Helvetica, clean, sans-serif;}#yiv3907903857 #yiv3907903857ygrp-mlmsg pre, #yiv3907903857 code {font:115% monospace;}#yiv3907903857 #yiv3907903857ygrp-mlmsg * {line-height:1.22em;}#yiv3907903857 #yiv3907903857ygrp-mlmsg #yiv3907903857logo {padding-bottom:10px;}#yiv3907903857 #yiv3907903857ygrp-msg p a {font-family:Verdana;}#yiv3907903857 #yiv3907903857ygrp-msg p#yiv3907903857attach-count span {color:#1E66AE;font-weight:700;}#yiv3907903857 #yiv3907903857ygrp-reco #yiv3907903857reco-head {color:#ff7900;font-weight:700;}#yiv3907903857 #yiv3907903857ygrp-reco {margin-bottom:20px;padding:0px;}#yiv3907903857 #yiv3907903857ygrp-sponsor #yiv3907903857ov li a {font-size:130%;text-decoration:none;}#yiv3907903857 #yiv3907903857ygrp-sponsor #yiv3907903857ov li {font-size:77%;list-style-type:square;padding:6px 0;}#yiv3907903857 #yiv3907903857ygrp-sponsor #yiv3907903857ov ul {margin:0;padding:0 0 0 8px;}#yiv3907903857 #yiv3907903857ygrp-text {font-family:Georgia;}#yiv3907903857 #yiv3907903857ygrp-text p {margin:0 0 1em 0;}#yiv3907903857 #yiv3907903857ygrp-text tt {font-size:120%;}#yiv3907903857 #yiv3907903857ygrp-vital ul li:last-child {border-right:none !important;}#yiv3907903857

Fri Apr 14, 2017 3:58 pm (PDT) . Posted by:

"Novri Bastian"

yup...done
.. thanks ya master ..smg dibalas dengan pahala berlipat ganda

On 13 Apr 2017 6:44 a.m., "'Mr. Kid' mr.nmkid@gmail.com [belajar-excel]" <
belajar-excel@yahoogroups.com> wrote:

>
>
> Coba lihat di blog milis tentang combobox mulai dari sini
> <http://b-excel.blogspot.co.id/2014/02/belajarvba-102-combobox-01.html>.
>
> Regards,
> Kid
>
>
> 2017-04-12 18:48 GMT+07:00 Novri Bastian nobastians@gmail.com
> [belajar-excel] <belajar-excel@yahoogroups.com>:
>
>>
>>
>> master, saya minta tolong contohin satu yang nama agentnya di worksheet
>> bisa gak ya? atau caranya aja gmn ya setelah saya pindahkan nama agent ke
>> worksheet setelah itu kodenya apa untuk combo box di userform? thanks ya
>>
>> On 11 Apr 2017 9:40 p.m., wrote:
>>
>>> dear mr kid..
>>>
>>> thank you so much for the insight...
>>>
>>>
>>> bisa tolong dicontohkan sedikit master? saya sedikit bingung ...
>>>
>>> On 11 Apr 2017 6:56 p.m., "'Mr. Kid' mr.nmkid@gmail.com
>>> [belajar-excel]" <belajar-excel@yahoogroups.com> wrote:
>>>
>>>
>>>
>>> Hai Nopri,
>>>
>>> Kenapa seluruh item yang akan ditampilkan dalam userform tidak dibuat
>>> dalam worksheet lebih dulu ?
>>> Jadi, semua nilai yang tadinya disimpan dalam form, ditulis juga ke
>>> dalam sheet.
>>> Setelah itu, Anda bisa memanfaatkan seluruh fitur Excel yang
>>> memungkinkan untuk memproses semua data yang sudah ada dalam worksheet.
>>>
>>> Kalau dalam worksheet sudah didapatkan seluruh nilai yang dibutuhkan
>>> untuk ditampilkan dalam userform (misal di userform lainnya), maka lakukan
>>> pembacaan pada sheet dan pasang ke userform dimaksud.
>>>
>>> Saya pikir lebih mudah begitu daripada berpusing-pusing mencari script
>>> yang bisa melakukan proses ini itu.
>>>
>>> Regards,
>>> Kid
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> 2017-04-07 11:51 GMT+07:00 Novri Bastian nobastians@gmail.com
>>> [belajar-excel] <belajar-excel@yahoogroups.com>:
>>>
>>>>
>>>>
>>>>
>>>> Selamat Siang Master,
>>>>
>>>>
>>>> Saya Nopri, sebelumnya saya membuat aplikasi penilaian namun ada
>>>> kendala dengan membuat hasil score di menu form sehingga saya buat
>>>> dibelakang layar/di sheetnya. serta untuk menambahkan nama agent/tanggal
>>>> menggunakan command button namun datanya ada didalam formnya bukan di
>>>> sheet..
>>>>
>>>>
>>>> mohon bantuannya para master.... terima kasihScoring_App.xlsm
>>>> <http://milis-belajar-excel.1048464.n5.nabble.com/file/n5735820/Scoring_App.xlsm>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>
>
============================================================
Pojok Lowongan Kerja yang disediakan milis :
http://milis-belajar-excel.1048464.n5.nabble.com/Pojok-Lowongan-Kerja-f5725753.html
*** Posting lowongan kerja : ke link tersebut dan klik New Topic
============================================================
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