Bls: Re: [belajar-excel] Agar InputBox selalu muncul jika isinya kosong atau data tidak ditemukan

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Bls: Re: [belajar-excel] Agar InputBox selalu muncul jika isinya kosong atau data tidak ditemukan

HAIRUL ALAM
Salam Mr.Kid, Selamat MalamMaaf saya mengganggu waktunya lagi, 

Kalau mau belajar otodidak macro cara C, seperti saya yang pemula ini harus mulai dari mana. Master
AssalamualaikumTerimakasihHairul Alam 
Dikirim dari Yahoo Mail di Android

  Pada Kam, 5 Nov 2015 pada 13:53, 'Mr. Kid' [hidden email] [belajar-excel]<[hidden email]> menulis:    

Terimakasih.

Sepertinya memang kebanyakan pengguna VBA yang ada dimilis ini belajar secara otodidak (termasuk saya).
Penghalang utama pembelajar VBA adalah anggapan bahwa memahami VBA sama dengan menjadi seorang programmer.
Padahal VBA adalah alat untuk membantu mengotomasi proses kerja keseharian. Jadi target utmanya bukan untuk programmer atau menjadikan seseorang menjadi seorang programmer.
 
Umumnya, proses belajar otodidak yang sering dijumpai adalah dengan 3 jalur berikut :
a. record macro
    >> cara ini cukup cepat untuk bisa memahami bunyi script sederhana dan menyesuaikannya dengan kebutuhan yang sederhana.
    >> kebanyakan akan membutuhkan waktu lama untuk bisa memahami VBA yang akan digunakan secara luas, terutama ketika berjumpa kebutuhan yang dinamis. Contohnya merujuk suatu range yang dinamis berdasar pola peletakan data tertentu dan sebagainya.
    >> biasanya pelaku otodidak ini lebih nyaman membuat sebuah alur yang relatif statis
    >> yang sering ditemui, pelaku otodidak ini cepat merasa sudah bisa dan nyaman dengan yang dipahaminya, sehingga enggan atau akan merasa sulit sekali memperlajari hal dasar dalam pemrograman seperti datatype, variabel (deklarasi maupun penggunaannya sebagai input parameter, dan sebagainya).
    >> ciri yang umum adalah banyaknya prosedur yang relatif sama kerjanya didalam sebuah alur proses.

b. copas script dan sesuaikan
    >> cara ini relatif instan, tetapi sulit sekali untuk bisa memahami apa yang ada di dalam suatu prosedur yang di-copas.
    >> kendala pertama yang sering ditemui pelaku ini adalah tergantung pada kemiripan kebutuhan dengan script yang sudah ada
    >> biasanya pelaku ini akan sangat merasa berat untuk mempelajari hal dasar tentang pemrograman, karena sudah kadung ketagihan copas dan sesuaikan, sehingga sulit membuat sesuatu yang dibutuhkannya secara cepat dan tepat.

c. belajar dari dasar
    >> cara ini bisa cepat dan bisa juga lambat. Jika penuh semangat dan berani mencoba, maka cara ini sebenarnya lebih cepat dibanding dua cara di atas.
    >> membosankan diawalnya, karena akan sulit mengerti dan butuh berulang-ulang melakukannya (membaca dan mencoba).
    >> yang merepotkan adalah bahwa cara ini menuntut konsistensi dalam belajar setahap demi setahap penuh kesabaran.
    >> pelaku cara ini dituntut untuk paham kode yang ditulis dan apa yang terwujud darinya.


Andaikan ada sebuah kasus yang perlu sentuhan VBA, pelaku otodidak di atas akan memiliki perbedaan. Kira-kira begini :
pelaku a :
   1. usaha record macro kalau bisa
   2. kalau tidak bisa, maka search di internet tentang kasus tersebut lalu menjadi pelaku b alias copas
   3. ubah kode-kode yang ada (entah hasil 1 atau 2)

pelaku b :
   1. search di internet tentang kasus tersebut, yang kalau dicopas bisa jalan dan sesuai harapan
   2... ubah kode-kode hasil 1 agar bisa sesuai kebutuhan

pelaku c :
   1. mencari tahu apa saja yang dibutuhkan lalu mengatur urutannya
   2. mencoba menyusun kode, kalau tidak bisa, search di internet tentang object yang dibutuhkan (namanya, cara pakainya, kemampuan yang dimiliki si object, dan sebagainya)
   3. mencoba menyusun kode lagi dengan tambahan informasi yang ada.

Hasil yang diperoleh :
pelaku a :
   * jadi tahu ada object seperti itu tapi baru bisa memakai kemampuan object yang dia temui dari hasil record atau search di internet saja.

pelaku b :
   * jadi tahu ada prosedur itu dan bisa diubah begini begitu... alias bertambah daftar prosedur yang diketahuinya

pelaku c :
   * jadi tahu kemampuan sesungguhnya dari setiap object yang ditemuinya, karena lebih jelas arahnya saat mencoba memanfaatkannya di suatu kode

Jadi, kalau memang akan sering bersentuhan dengan pekerjaan yang acap kali membutuhkan proses otomasi, mulailah berani belajar sebagai pelaku c.
Percaya deh... ndak perlu jadi programmer untuk mempelajari VBA dan tidak akan serta merta menjadi programmer setelah bisa VBA.

Ada beberapa member milis yang mencoba dengan nekad pakai cara c, dan progresnya sangat pesat dibanding yang pakai cara a dan b.

Berani mencoba cara c ?
atau
Sudah puas dengan apa yang Anda bisa tentang VBA saat ini ?

;)

Wassalam,
Kid



2015-11-05 11:34 GMT+07:00 ris ha [hidden email] [belajar-excel] <[hidden email]>:

  
Luar Biasa Mr. Kid..., penjelasannya luar biasa.... Pola berfikir saya belum terstruktur, maklum otodidak, googling, nemu coding, trus diterapkan, g jadi dan nanya deh. Semoga Mr. Kid Sehat Selalu... Amin

Salam Kagum
Haris
--------------------------------------------
On Mon, 11/2/15, 'Mr. Kid' [hidden email] [belajar-excel] <[hidden email]> wrote:

Subject: Re: [belajar-excel] Agar InputBox selalu muncul jika isinya kosong atau data tidak ditemukan
 To: "BeExcel" <[hidden email]>
 Date: Monday, November 2, 2015, 4:07 AM



  









 Wa'alaikumussalam wr wb

 Hai Haris,

 Sebenarnya bagian ini
 akan ditulis dipaling akhir...tapi...
 Sebaiknya sejak awal belajar VBA,
 biasakanlah memaksa diri untuk menggunakan Option Explicit,
 sehingga seluruh variabel yang akan digunakan akan dipaksa
 oleh compiler untuk dideklarasikan.

 Contoh :

 Pastikan bunyi Option Explicit dihapus
 (baris pertama module tersebut). 1. Jika range A1
 berisi teks berbunyi 'Kid', apa hasil dari baris
 kode berikut :
        
 msgbox range("a1")
 Jawabnya adalah muncul sebuah kotak
 pesan berisi tulisan 'Kid' alias nilai yang ada di
 range A1 pada sheet aktif.

 berikutnya...
 2. Jika range A1 berisi teks
 berbunyi 'Kid', apa hasil dari baris kode berikut
 :      dim rng as range
       set
 rng=range("a1")
       msgbox rng
 Jawabnya adalah muncul sebuah kotak
 pesan berisi tulisan 'Kid' alias nilai yang ada di
 range A1 pada sheet aktif.

 *** sama ya antara no 1 dan 2

 3. Jika range A1
 berisi teks berbunyi 'Kid', apa hasil dari baris
 kode berikut :      set
 rng=range("a1")
       msgbox rng
 Jawabnya adalah muncul sebuah kotak pesan
 berisi tulisan 'Kid' alias nilai yang ada di range
 A1 pada sheet aktif.

 *** loh... sama juga hasilnya
 Tapi, variabel rng di nomor 2
 bertipe object range, dan variabel rng di nomor 3 bertipe
 variant.
 trus kenapa... toh sama
 saja hasilnya...
 ya iyalah, itu
 cuma baca doink.....

 Sekarang gini :
 1. apa hasil baris kode berikut :
      dim rng as range
      set
 rng=range("A1")
      rng="Tulis
 ini"
 Jawabnya adalah nilai
 di range A1 sheet yang aktif akan berubah nilainya menjadi
 berbunyi 'Tulis ini'

 2. apa hasil baris kode berikut
 :
      set
 rng=range("a1")
      rng="Lagi-lagi
 tulis"
 Jawabnya adalah range
 A1 sheet yang aktif tidak akan berubah nilainya
 menjadi 'Lagi-lagi tulis'

 ***
 Tampak bedanya kan...

 Sekarang, kalau ada baris kode
 berikut :
     for each rng in
 range("a1:a3")
          msgbox rng
         
 rng="tulis"
         
 rng.clearcontents
    next
 rng
 Apa hasilnya ?
 Jawabnya adalah error, terus tanya
 ke milis... Master n rekan sekalian, kenapa kok macronya
 error... blablabla... cape deh

 -----------------------

 2. yang ini serius
 ah... mulai urun solusi kasus...
 A. bagian :
 Sheets("Opening").Visible = 1
 For Each Sh In ThisWorkbook.Worksheets
 If Sh.Name <> "Opening" Then
 Sh.Visible = 1
 End If
 Next Sh

 sebaiknya variabel bernama Sh
 dideklarasikan termasuk datatype-nya.
 dim Sh as worksheet
 Sheets("Opening").Visible = 1
 For Each Sh In ThisWorkbook.Worksheets
 If Sh.Name <> "Opening" Then
 Sh.Visible = 1
 End If
 Next Sh

 B. InputBox selalu muncul jika isinya
 kosong atau data tidak ditemukan.B.1... Kalau pakai
 InputBox nya VB, maka akan sulit dibedakan antara user
 menekan Cancel (termasuk Close [tanda x]) dengan user
 menekan OK tapi belum mengisi apapun.

 Strukturnya begini :
 dim sInput as string

 ULANGI:    
 'ini namanya memberi label
     sinput=inputbox("isi
 sesuatu ya","ini teks caption nya")
     if len(sinput)=0 then   
 'user gak isi apa-apa langsung tekan OK atau user tekan
 Cancel atau user tekan close (x kecil)
            'isi
 perlakuan Anda disini, misal tampilkan msgbox atau apa
 saja
           
 'setelah perlakuan diatas, kalau mau menampilkan si
 input box lagi, beri perintah ini :
            goto ULANGI
     else
           'isi dengan
 proses cek nilai sInput sesuai dengan yang dimaksud atau
 tidak
          
 'seperti proses yang ada Find-find an itu
           'termasuk
 proses menampilkan msgbox hasil find-find an dan
 sebagainya
     endif


 B.2. Kalau pakai inputbox nya
 application, maka bisa dibedakan antara user menekan Cancel
 (termasuk close) dengan user menekan OK tapi masih kosongan.
 Yang sedikit berbeda pada pemakaiannya dengan inputbox nya
 VB adalah ada opsi tipe data inputan yang akan dimasukkan
 oleh user.
 
 Strukturnya begini :
 dim vInput as variant

 ULANGI:    
 'ini namanya memberi label
    
 vinput=application.inputbox("isi sesuatu
 ya","ini teks caption nya",type:=2)    
 '2 adalah untuk tipe input ber-datatype string
     if vartype(vinput)=11
 then    'user tekan Cancel atau user tekan close (x
 kecil)
           
 'isi perlakuan Anda disini, misal tampilkan msgbox atau
 apa saja
           
 'termasuk proses tutup workbook misalnya
     elseif len(vinput)=0
 then     'user belum isi apa-apa tapi sudah tekan
 OK
            'isi
 perlakuan Anda disini, misal tampilkan pesan atau apa saja
 deh...
           
 'kalau akan menampilkan si inputbox lagi, tulis perintah
 ini :
            goto
 ULANGI
     else
           'isi dengan
 proses cek nilai sInput sesuai dengan yang dimaksud atau
 tidak
          
 'seperti proses yang ada Find-find an itu
           'termasuk
 proses menampilkan msgbox hasil find-find an
     endif

 *** InputBox
 nya VB atau application tidak bisa menyembunyikan karakter
 yang di-input oleh user.
 ***
 kalau pengen menyembunyikan karakter yang di-input user,
 maka buatlah userform khusus yang salah satu object nya
 adalah sebuah textbox untuk user menuliskan sesuatu. Textbox
 ini diatur agar properti passwordchar nya diisi sebuah
 karakter tertentu. Biasanya diisi karakter * supaya kalau
 user menulis sesuatu, yang tampak adalah deretan * seperti
 *** (user baru ketik 3 karakter)


 Udah ah...
 dah adzan subuh...

 Wassalamu'alaikum wr wb
 Kid






 On Sat, Oct 31, 2015 at
 11:24 AM, ris ha [hidden email]
 [belajar-excel] <[hidden email]>
 wrote:















  









 Assalamu'alaikum.
 Dear master semua, saya
 punya kesulitan, yaitu Agar InputBox selalu muncul jika
 isinya kosong atau data tidak ditemukan. Saya udah
 mempraktekan, tapi belum ketemu. Kesalahan macro saya
 dimananya ya... File terlampir

 Private Sub
 Workbook_Open()
 Sheets("Opening").Visible = 1
 For Each Sh In ThisWorkbook.Worksheets
 If Sh.Name <> "Opening" Then
 Sh.Visible = 1
 End If
 Next Sh

 ID =
 InputBox("Pak " &
 Sheets("DataPassword").Range("C3").Value
 & ", silahkan masukkan password anda.",
 APPNAME)
 Do Until ID <>
 vbNullString
 If ID = vbNullString Then
     Pesan = MsgBox("Tidak Boleh
 Kosong.", vbOKCancel, APPNAME)
    
 If Pesan = vbOK Then
         ID =
 InputBox("Pak " &
 Sheets("DataPassword").Range("C3").Value
 & ", silahkan masukkan password anda.",
 APPNAME)
     Else
         ThisWorkbook.Save
         ThisWorkbook.Close
     End If
 Else
     With
 Sheets("DataPassword").Range("E6:E10")
     Set Rng = .Find(what:=ID,
 After:=.Cells(1), LookIn:=xlFormulas, SearchOrder:=xlByRows,
 MatchCase:=True)
     If Not Rng Is
 Nothing Then
        
 Sheets("Opening").Visible = 1
         For Each Sh In
 ThisWorkbook.Worksheets
         If
 Sh.Name <> "Opening" Then
             Sh.Visible = 2
         End If
         Next Sh
    
 Else
         Pesan =
 MsgBox("Password Salah", vbOKCancel, APPNAME)
         If Pesan = vbOK Then
             ID = InputBox("Pak
 " &
 Sheets("DataPassword").Range("C3").Value
 & ", silahkan masukkan password anda.",
 APPNAME)
         Else
             ThisWorkbook.Save
             ThisWorkbook.Close
         End If
    
 End If
 End With
 End If
 Loop
 ThisWorkbook.Save
 End Sub
 Terima kasih atas bantuan
 dan solusinya...
 SalamHaris
































 #yiv7543240622 #yiv7543240622 --
 #yiv7543240622ygrp-mkp {
 border:1px solid #d8d8d8;font-family:Arial;margin:10px
 0;padding:0 10px;}

 #yiv7543240622 #yiv7543240622ygrp-mkp hr {
 border:1px solid #d8d8d8;}

 #yiv7543240622 #yiv7543240622ygrp-mkp #yiv7543240622hd {
 color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
 0;}

 #yiv7543240622 #yiv7543240622ygrp-mkp #yiv7543240622ads {
 margin-bottom:10px;}

 #yiv7543240622 #yiv7543240622ygrp-mkp .yiv7543240622ad {
 padding:0 0;}

 #yiv7543240622 #yiv7543240622ygrp-mkp .yiv7543240622ad p {
 margin:0;}

 #yiv7543240622 #yiv7543240622ygrp-mkp .yiv7543240622ad a {
 color:#0000ff;text-decoration:none;}
 #yiv7543240622 #yiv7543240622ygrp-sponsor
 #yiv7543240622ygrp-lc {
 font-family:Arial;}

 #yiv7543240622 #yiv7543240622ygrp-sponsor
 #yiv7543240622ygrp-lc #yiv7543240622hd {
 margin:10px
 0px;font-weight:700;font-size:78%;line-height:122%;}

 #yiv7543240622 #yiv7543240622ygrp-sponsor
 #yiv7543240622ygrp-lc .yiv7543240622ad {
 margin-bottom:10px;padding:0 0;}

 #yiv7543240622 #yiv7543240622actions {
 font-family:Verdana;font-size:11px;padding:10px 0;}

 #yiv7543240622 #yiv7543240622activity {
 background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}

 #yiv7543240622 #yiv7543240622activity span {
 font-weight:700;}

 #yiv7543240622 #yiv7543240622activity span:first-child {
 text-transform:uppercase;}

 #yiv7543240622 #yiv7543240622activity span a {
 color:#5085b6;text-decoration:none;}

 #yiv7543240622 #yiv7543240622activity span span {
 color:#ff7900;}

 #yiv7543240622 #yiv7543240622activity span
 .yiv7543240622underline {
 text-decoration:underline;}

 #yiv7543240622 .yiv7543240622attach {
 clear:both;display:table;font-family:Arial;font-size:12px;padding:10px
 0;width:400px;}

 #yiv7543240622 .yiv7543240622attach div a {
 text-decoration:none;}

 #yiv7543240622 .yiv7543240622attach img {
 border:none;padding-right:5px;}

 #yiv7543240622 .yiv7543240622attach label {
 display:block;margin-bottom:5px;}

 #yiv7543240622 .yiv7543240622attach label a {
 text-decoration:none;}

 #yiv7543240622 blockquote {
 margin:0 0 0 4px;}

 #yiv7543240622 .yiv7543240622bold {
 font-family:Arial;font-size:13px;font-weight:700;}

 #yiv7543240622 .yiv7543240622bold a {
 text-decoration:none;}

 #yiv7543240622 dd.yiv7543240622last p a {
 font-family:Verdana;font-weight:700;}

 #yiv7543240622 dd.yiv7543240622last p span {
 margin-right:10px;font-family:Verdana;font-weight:700;}

 #yiv7543240622 dd.yiv7543240622last p
 span.yiv7543240622yshortcuts {
 margin-right:0;}

 #yiv7543240622 div.yiv7543240622attach-table div div a {
 text-decoration:none;}

 #yiv7543240622 div.yiv7543240622attach-table {
 width:400px;}

 #yiv7543240622 div.yiv7543240622file-title a, #yiv7543240622
 div.yiv7543240622file-title a:active, #yiv7543240622
 div.yiv7543240622file-title a:hover, #yiv7543240622
 div.yiv7543240622file-title a:visited {
 text-decoration:none;}

 #yiv7543240622 div.yiv7543240622photo-title a,
 #yiv7543240622 div.yiv7543240622photo-title a:active,
 #yiv7543240622 div.yiv7543240622photo-title a:hover,
 #yiv7543240622 div...yiv7543240622photo-title a:visited {
 text-decoration:none;}

 #yiv7543240622 div#yiv7543240622ygrp-mlmsg
 #yiv7543240622ygrp-msg p a span.yiv7543240622yshortcuts {
 font-family:Verdana;font-size:10px;font-weight:normal;}
 
 #yiv7543240622 .yiv7543240622green {
 color:#628c2a;}

 #yiv7543240622 .yiv7543240622MsoNormal {
 margin:0 0 0 0;}

 #yiv7543240622 o {
 font-size:0;}

 #yiv7543240622 #yiv7543240622photos div {
 float:left;width:72px;}

 #yiv7543240622 #yiv7543240622photos div div {
 border:1px solid
 #666666;height:62px;overflow:hidden;width:62px;}

 #yiv7543240622 #yiv7543240622photos div label {
 color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}

 #yiv7543240622 #yiv7543240622reco-category {
 font-size:77%;}

 #yiv7543240622 #yiv7543240622reco-desc {
 font-size:77%;}

 #yiv7543240622 .yiv7543240622replbq {
 margin:4px;}

 #yiv7543240622 #yiv7543240622ygrp-actbar div a:first-child {
 margin-right:2px;padding-right:5px;}

 #yiv7543240622 #yiv7543240622ygrp-mlmsg {
 font-size:13px;font-family:Arial, helvetica, clean,
 sans-serif;}

 #yiv7543240622 #yiv7543240622ygrp-mlmsg table {
 font-size:inherit;font:100%;}

 #yiv7543240622 #yiv7543240622ygrp-mlmsg select,
 #yiv7543240622 input, #yiv7543240622 textarea {
 font:99% Arial, Helvetica, clean, sans-serif;}

 #yiv7543240622 #yiv7543240622ygrp-mlmsg pre, #yiv7543240622
 code {
 font:115% monospace;}

 #yiv7543240622 #yiv7543240622ygrp-mlmsg * {
 line-height:1.22em;}

 #yiv7543240622 #yiv7543240622ygrp-mlmsg #yiv7543240622logo {
 padding-bottom:10px;}


 #yiv7543240622 #yiv7543240622ygrp-msg p a {
 font-family:Verdana;}

 #yiv7543240622 #yiv7543240622ygrp-msg
 p#yiv7543240622attach-count span {
 color:#1E66AE;font-weight:700;}

 #yiv7543240622 #yiv7543240622ygrp-reco
 #yiv7543240622reco-head {
 color:#ff7900;font-weight:700;}

 #yiv7543240622 #yiv7543240622ygrp-reco {
 margin-bottom:20px;padding:0px;}

 #yiv7543240622 #yiv7543240622ygrp-sponsor #yiv7543240622ov
 li a {
 font-size:130%;text-decoration:none;}

 #yiv7543240622 #yiv7543240622ygrp-sponsor #yiv7543240622ov
 li {
 font-size:77%;list-style-type:square;padding:6px 0;}

 #yiv7543240622 #yiv7543240622ygrp-sponsor #yiv7543240622ov
 ul {
 margin:0;padding:0 0 0 8px;}

 #yiv7543240622 #yiv7543240622ygrp-text {
 font-family:Georgia;}

 #yiv7543240622 #yiv7543240622ygrp-text p {
 margin:0 0 1em 0;}

 #yiv7543240622 #yiv7543240622ygrp-text tt {
 font-size:120%;}

 #yiv7543240622 #yiv7543240622ygrp-vital ul li:last-child {
 border-right:none !important;
 }
 #yiv7543240622




  #yiv2960514097 #yiv2960514097 -- #yiv2960514097ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv2960514097 #yiv2960514097ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv2960514097 #yiv2960514097ygrp-mkp #yiv2960514097hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv2960514097 #yiv2960514097ygrp-mkp #yiv2960514097ads {margin-bottom:10px;}#yiv2960514097 #yiv2960514097ygrp-mkp .yiv2960514097ad {padding:0 0;}#yiv2960514097 #yiv2960514097ygrp-mkp .yiv2960514097ad p {margin:0;}#yiv2960514097 #yiv2960514097ygrp-mkp .yiv2960514097ad a {color:#0000ff;text-decoration:none;}#yiv2960514097 #yiv2960514097ygrp-sponsor #yiv2960514097ygrp-lc {font-family:Arial;}#yiv2960514097 #yiv2960514097ygrp-sponsor #yiv2960514097ygrp-lc #yiv2960514097hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv2960514097 #yiv2960514097ygrp-sponsor #yiv2960514097ygrp-lc .yiv2960514097ad {margin-bottom:10px;padding:0 0;}#yiv2960514097 #yiv2960514097actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv2960514097 #yiv2960514097activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv2960514097 #yiv2960514097activity span {font-weight:700;}#yiv2960514097 #yiv2960514097activity span:first-child {text-transform:uppercase;}#yiv2960514097 #yiv2960514097activity span a {color:#5085b6;text-decoration:none;}#yiv2960514097 #yiv2960514097activity span span {color:#ff7900;}#yiv2960514097 #yiv2960514097activity span .yiv2960514097underline {text-decoration:underline;}#yiv2960514097 .yiv2960514097attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv2960514097 .yiv2960514097attach div a {text-decoration:none;}#yiv2960514097 .yiv2960514097attach img {border:none;padding-right:5px;}#yiv2960514097 .yiv2960514097attach label {display:block;margin-bottom:5px;}#yiv2960514097 .yiv2960514097attach label a {text-decoration:none;}#yiv2960514097 blockquote {margin:0 0 0 4px;}#yiv2960514097 .yiv2960514097bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv2960514097 .yiv2960514097bold a {text-decoration:none;}#yiv2960514097 dd.yiv2960514097last p a {font-family:Verdana;font-weight:700;}#yiv2960514097 dd.yiv2960514097last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv2960514097 dd.yiv2960514097last p span.yiv2960514097yshortcuts {margin-right:0;}#yiv2960514097 div.yiv2960514097attach-table div div a {text-decoration:none;}#yiv2960514097 div.yiv2960514097attach-table {width:400px;}#yiv2960514097 div.yiv2960514097file-title a, #yiv2960514097 div.yiv2960514097file-title a:active, #yiv2960514097 div.yiv2960514097file-title a:hover, #yiv2960514097 div.yiv2960514097file-title a:visited {text-decoration:none;}#yiv2960514097 div.yiv2960514097photo-title a, #yiv2960514097 div.yiv2960514097photo-title a:active, #yiv2960514097 div.yiv2960514097photo-title a:hover, #yiv2960514097 div.yiv2960514097photo-title a:visited {text-decoration:none;}#yiv2960514097 div#yiv2960514097ygrp-mlmsg #yiv2960514097ygrp-msg p a span.yiv2960514097yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv2960514097 .yiv2960514097green {color:#628c2a;}#yiv2960514097 .yiv2960514097MsoNormal {margin:0 0 0 0;}#yiv2960514097 o {font-size:0;}#yiv2960514097 #yiv2960514097photos div {float:left;width:72px;}#yiv2960514097 #yiv2960514097photos div div {border:1px solid #666666;min-height:62px;overflow:hidden;width:62px;}#yiv2960514097 #yiv2960514097photos div label {color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv2960514097 #yiv2960514097reco-category {font-size:77%;}#yiv2960514097 #yiv2960514097reco-desc {font-size:77%;}#yiv2960514097 .yiv2960514097replbq {margin:4px;}#yiv2960514097 #yiv2960514097ygrp-actbar div a:first-child {margin-right:2px;padding-right:5px;}#yiv2960514097 #yiv2960514097ygrp-mlmsg {font-size:13px;font-family:Arial, helvetica, clean, sans-serif;}#yiv2960514097 #yiv2960514097ygrp-mlmsg table {font-size:inherit;font:100%;}#yiv2960514097 #yiv2960514097ygrp-mlmsg select, #yiv2960514097 input, #yiv2960514097 textarea {font:99% Arial, Helvetica, clean, sans-serif;}#yiv2960514097 #yiv2960514097ygrp-mlmsg pre, #yiv2960514097 code {font:115% monospace;}#yiv2960514097 #yiv2960514097ygrp-mlmsg * {line-height:1.22em;}#yiv2960514097 #yiv2960514097ygrp-mlmsg #yiv2960514097logo {padding-bottom:10px;}#yiv2960514097 #yiv2960514097ygrp-msg p a {font-family:Verdana;}#yiv2960514097 #yiv2960514097ygrp-msg p#yiv2960514097attach-count span {color:#1E66AE;font-weight:700;}#yiv2960514097 #yiv2960514097ygrp-reco #yiv2960514097reco-head {color:#ff7900;font-weight:700;}#yiv2960514097 #yiv2960514097ygrp-reco {margin-bottom:20px;padding:0px;}#yiv2960514097 #yiv2960514097ygrp-sponsor #yiv2960514097ov li a {font-size:130%;text-decoration:none;}#yiv2960514097 #yiv2960514097ygrp-sponsor #yiv2960514097ov li {font-size:77%;list-style-type:square;padding:6px 0;}#yiv2960514097 #yiv2960514097ygrp-sponsor #yiv2960514097ov ul {margin:0;padding:0 0 0 8px;}#yiv2960514097 #yiv2960514097ygrp-text {font-family:Georgia;}#yiv2960514097 #yiv2960514097ygrp-text p {margin:0 0 1em 0;}#yiv2960514097 #yiv2960514097ygrp-text tt {font-size:120%;}#yiv2960514097 #yiv2960514097ygrp-vital ul li:last-child {border-right:none !important;}#yiv2960514097
Kid
Reply | Threaded
Open this post in threaded view
|

Re: Re: [belajar-excel] Agar InputBox selalu muncul jika isinya kosong atau data tidak ditemukan

Kid
Administrator
mulai dari sini
<https://b-excel.blogspot.com/2013/06/belajarvba-000-kenalan.html>




On Fri, Aug 30, 2019 at 7:38 PM HAIRUL ALAM [hidden email]
[belajar-excel] <[hidden email]> wrote:

>
>
> Salam Mr.Kid,
> Selamat Malam
> Maaf saya mengganggu waktunya lagi,
>
> Kalau mau belajar otodidak macro cara C, seperti saya yang pemula ini
> harus mulai dari mana. Master
>
> Assalamualaikum
> Terimakasih
> Hairul Alam
>
> Dikirim dari Yahoo Mail di Android
> <https://go.onelink.me/107872968?pid=InProduct&c=Global_Internal_YGrowth_AndroidEmailSig__AndroidUsers&af_wl=ym&af_sub1=Internal&af_sub2=Global_YGrowth&af_sub3=EmailSignature>
>
> Pada Kam, 5 Nov 2015 pada 13:53, 'Mr. Kid' [hidden email]
> [belajar-excel]
> <[hidden email]> menulis:
>
>
> Terimakasih.
>
> Sepertinya memang kebanyakan pengguna VBA yang ada dimilis ini belajar
> secara otodidak (termasuk saya).
> Penghalang utama pembelajar VBA adalah anggapan bahwa memahami VBA sama
> dengan menjadi seorang programmer.
> Padahal VBA adalah alat untuk membantu mengotomasi proses kerja
> keseharian. Jadi target utmanya bukan untuk programmer atau menjadikan
> seseorang menjadi seorang programmer.
>
> Umumnya, proses belajar otodidak yang sering dijumpai adalah dengan 3
> jalur berikut :
> a. record macro
>     >> cara ini cukup cepat untuk bisa memahami bunyi script sederhana dan
> menyesuaikannya dengan kebutuhan yang sederhana.
>     >> kebanyakan akan membutuhkan waktu lama untuk bisa memahami VBA yang
> akan digunakan secara luas, terutama ketika berjumpa kebutuhan yang
> dinamis. Contohnya merujuk suatu range yang dinamis berdasar pola peletakan
> data tertentu dan sebagainya.
>     >> biasanya pelaku otodidak ini lebih nyaman membuat sebuah alur yang
> relatif statis
>     >> yang sering ditemui, pelaku otodidak ini cepat merasa sudah bisa
> dan nyaman dengan yang dipahaminya, sehingga enggan atau akan merasa sulit
> sekali memperlajari hal dasar dalam pemrograman seperti datatype, variabel
> (deklarasi maupun penggunaannya sebagai input parameter, dan sebagainya).
>     >> ciri yang umum adalah banyaknya prosedur yang relatif sama kerjanya
> didalam sebuah alur proses.
>
> b. copas script dan sesuaikan
>     >> cara ini relatif instan, tetapi sulit sekali untuk bisa memahami
> apa yang ada di dalam suatu prosedur yang di-copas.
>     >> kendala pertama yang sering ditemui pelaku ini adalah tergantung
> pada kemiripan kebutuhan dengan script yang sudah ada
>     >> biasanya pelaku ini akan sangat merasa berat untuk mempelajari hal
> dasar tentang pemrograman, karena sudah kadung ketagihan copas dan
> sesuaikan, sehingga sulit membuat sesuatu yang dibutuhkannya secara cepat
> dan tepat.
>
> c. belajar dari dasar
>     >> cara ini bisa cepat dan bisa juga lambat. Jika penuh semangat dan
> berani mencoba, maka cara ini sebenarnya lebih cepat dibanding dua cara di
> atas.
>     >> membosankan diawalnya, karena akan sulit mengerti dan butuh
> berulang-ulang melakukannya (membaca dan mencoba).
>     >> yang merepotkan adalah bahwa cara ini menuntut konsistensi dalam
> belajar setahap demi setahap penuh kesabaran.
>     >> pelaku cara ini dituntut untuk paham kode yang ditulis dan apa yang
> terwujud darinya.
>
>
> Andaikan ada sebuah kasus yang perlu sentuhan VBA, pelaku otodidak di atas
> akan memiliki perbedaan. Kira-kira begini :
> pelaku a :
>    1. usaha record macro kalau bisa
>    2. kalau tidak bisa, maka search di internet tentang kasus tersebut
> lalu menjadi pelaku b alias copas
>    3. ubah kode-kode yang ada (entah hasil 1 atau 2)
>
> pelaku b :
>    1. search di internet tentang kasus tersebut, yang kalau dicopas bisa
> jalan dan sesuai harapan
>    2. ubah kode-kode hasil 1 agar bisa sesuai kebutuhan
>
> pelaku c :
>    1.. mencari tahu apa saja yang dibutuhkan lalu mengatur urutannya
>    2. mencoba menyusun kode, kalau tidak bisa, search di internet tentang
> object yang dibutuhkan (namanya, cara pakainya, kemampuan yang dimiliki si
> object, dan sebagainya)
>    3. mencoba menyusun kode lagi dengan tambahan informasi yang ada.
>
> Hasil yang diperoleh :
> pelaku a :
>    * jadi tahu ada object seperti itu tapi baru bisa memakai kemampuan
> object yang dia temui dari hasil record atau search di internet saja.
>
> pelaku b :
>    * jadi tahu ada prosedur itu dan bisa diubah begini begitu. alias
> bertambah daftar prosedur yang diketahuinya
>
> pelaku c :
>    * jadi tahu kemampuan sesungguhnya dari setiap object yang ditemuinya,
> karena lebih jelas arahnya saat mencoba memanfaatkannya di suatu kode
>
> Jadi, kalau memang akan sering bersentuhan dengan pekerjaan yang acap kali
> membutuhkan proses otomasi, mulailah berani belajar sebagai pelaku c.
> Percaya deh... ndak perlu jadi programmer untuk mempelajari VBA dan tidak
> akan serta merta menjadi programmer setelah bisa VBA.
>
> Ada beberapa member milis yang mencoba dengan nekad pakai cara c, dan
> progresnya sangat pesat dibanding yang pakai cara a dan b.
>
> Berani mencoba cara c ?
> atau
> Sudah puas dengan apa yang Anda bisa tentang VBA saat ini ?
>
> ;)
>
> Wassalam,
> Kid
>
>
>
> 2015-11-05 11:34 GMT+07:00 ris ha [hidden email] [belajar-excel] <
> [hidden email]>:
>
>
>
> Luar Biasa Mr. Kid..., penjelasannya luar biasa.... Pola berfikir saya
> belum terstruktur, maklum otodidak, googling, nemu coding, trus diterapkan,
> g jadi dan nanya deh. Semoga Mr. Kid Sehat Selalu. Amin
>
> Salam Kagum
> Haris
> --------------------------------------------
> On Mon, 11/2/15, 'Mr. Kid' [hidden email] [belajar-excel] <
> [hidden email]> wrote:
>
> Subject: Re: [belajar-excel] Agar InputBox selalu muncul jika isinya
> kosong atau data tidak ditemukan
> To: "BeExcel" <[hidden email]>
> Date: Monday, November 2, 2015, 4:07 AM
>
>
>
>
>
>
>
>
>
>
>
>
>
> Wa'alaikumussalam wr wb
>
> Hai Haris,
>
> Sebenarnya bagian ini
> akan ditulis dipaling akhir...tapi...
> Sebaiknya sejak awal belajar VBA,
> biasakanlah memaksa diri untuk menggunakan Option Explicit,
> sehingga seluruh variabel yang akan digunakan akan dipaksa
> oleh compiler untuk dideklarasikan.
>
> Contoh :
>
> Pastikan bunyi Option Explicit dihapus
> (baris pertama module tersebut). 1. Jika range A1
> berisi teks berbunyi 'Kid', apa hasil dari baris
> kode berikut :
>
> msgbox range("a1")
> Jawabnya adalah muncul sebuah kotak
> pesan berisi tulisan 'Kid' alias nilai yang ada di
> range A1 pada sheet aktif.
>
> berikutnya...
> 2. Jika range A1 berisi teks
> berbunyi 'Kid', apa hasil dari baris kode berikut
> :      dim rng as range
>       set
> rng=range("a1")
>       msgbox rng
> Jawabnya adalah muncul sebuah kotak
> pesan berisi tulisan 'Kid' alias nilai yang ada di
> range A1 pada sheet aktif.
>
> *** sama ya antara no 1 dan 2
>
> 3. Jika range A1
> berisi teks berbunyi 'Kid', apa hasil dari baris
> kode berikut :      set
> rng=range("a1")
>       msgbox rng
> Jawabnya adalah muncul sebuah kotak pesan
> berisi tulisan 'Kid' alias nilai yang ada di range
> A1 pada sheet aktif.
>
> *** loh... sama juga hasilnya
> Tapi, variabel rng di nomor 2
> bertipe object range, dan variabel rng di nomor 3 bertipe
> variant.
> trus kenapa... toh sama
> saja hasilnya...
> ya iyalah, itu
> cuma baca doink....
>
> Sekarang gini :
> 1. apa hasil baris kode berikut :
>      dim rng as range
>      set
> rng=range("A1")
>      rng="Tulis
> ini"
> Jawabnya adalah nilai
> di range A1 sheet yang aktif akan berubah nilainya menjadi
> berbunyi 'Tulis ini'
>
> 2. apa hasil baris kode berikut
> :
>      set
> rng=range("a1")
>      rng="Lagi-lagi
> tulis"
> Jawabnya adalah range
> A1 sheet yang aktif tidak akan berubah nilainya
> menjadi 'Lagi-lagi tulis'
>
> ***
> Tampak bedanya kan...
>
> Sekarang, kalau ada baris kode
> berikut :
>     for each rng in
> range("a1:a3")
>          msgbox rng
>
> rng="tulis"
>
> rng.clearcontents
>    next
> rng
> Apa hasilnya ?
> Jawabnya adalah error, terus tanya
> ke milis... Master n rekan sekalian, kenapa kok macronya
> error... blablabla... cape deh
>
> -----------------------
>
> 2. yang ini serius
> ah... mulai urun solusi kasus...
> A. bagian :
> Sheets("Opening").Visible = 1
> For Each Sh In ThisWorkbook.Worksheets
> If Sh.Name <> "Opening" Then
> Sh.Visible = 1
> End If
> Next Sh
>
> sebaiknya variabel bernama Sh
> dideklarasikan termasuk datatype-nya.
> dim Sh as worksheet
> Sheets("Opening").Visible = 1
> For Each Sh In ThisWorkbook.Worksheets
> If Sh.Name <> "Opening" Then
> Sh.Visible = 1
> End If
> Next Sh
>
> B. InputBox selalu muncul jika isinya
> kosong atau data tidak ditemukan.B.1. Kalau pakai
>
> InputBox nya VB, maka akan sulit dibedakan antara user
> menekan Cancel (termasuk Close [tanda x]) dengan user
> menekan OK tapi belum mengisi apapun.
>
> Strukturnya begini :
> dim sInput as string
>
> ULANGI:
> 'ini namanya memberi label
>     sinput=inputbox("isi
> sesuatu ya","ini teks caption nya")
>     if len(sinput)=0 then
> 'user gak isi apa-apa langsung tekan OK atau user tekan
> Cancel atau user tekan close (x kecil)
>            'isi
> perlakuan Anda disini, misal tampilkan msgbox atau apa
> saja
>
> 'setelah perlakuan diatas, kalau mau menampilkan si
> input box lagi, beri perintah ini :
>            goto ULANGI
>     else
>           'isi dengan
> proses cek nilai sInput sesuai dengan yang dimaksud atau
> tidak
>
> 'seperti proses yang ada Find-find an itu
>           'termasuk
> proses menampilkan msgbox hasil find-find an dan
> sebagainya
>     endif
>
>
> B.2. Kalau pakai inputbox nya
> application, maka bisa dibedakan antara user menekan Cancel
> (termasuk close) dengan user menekan OK tapi masih kosongan.
> Yang sedikit berbeda pada pemakaiannya dengan inputbox nya
> VB adalah ada opsi tipe data inputan yang akan dimasukkan
> oleh user.
>
> Strukturnya begini :
> dim vInput as variant
>
> ULANGI:
> 'ini namanya memberi label
>
> vinput=application.inputbox("isi sesuatu
> ya","ini teks caption nya",type:=2)
> '2 adalah untuk tipe input ber-datatype string
>     if vartype(vinput)=11
> then    'user tekan Cancel atau user tekan close (x
> kecil)
>
> 'isi perlakuan Anda disini, misal tampilkan msgbox atau
> apa saja
>
> 'termasuk proses tutup workbook misalnya
>     elseif len(vinput)=0
> then     'user belum isi apa-apa tapi sudah tekan
> OK
>            'isi
> perlakuan Anda disini, misal tampilkan pesan atau apa saja
> deh...
>
> 'kalau akan menampilkan si inputbox lagi, tulis perintah
> ini :
>            goto
> ULANGI
>     else
>           'isi dengan
> proses cek nilai sInput sesuai dengan yang dimaksud atau
> tidak
>
> 'seperti proses yang ada Find-find an itu
>           'termasuk
> proses menampilkan msgbox hasil find-find an
>     endif
>
> *** InputBox
> nya VB atau application tidak bisa menyembunyikan karakter
> yang di-input oleh user.
> ***
> kalau pengen menyembunyikan karakter yang di-input user,
> maka buatlah userform khusus yang salah satu object nya
> adalah sebuah textbox untuk user menuliskan sesuatu. Textbox
> ini diatur agar properti passwordchar nya diisi sebuah
> karakter tertentu. Biasanya diisi karakter * supaya kalau
> user menulis sesuatu, yang tampak adalah deretan * seperti
> *** (user baru ketik 3 karakter)
>
>
> Udah ah...
> dah adzan subuh...
>
> Wassalamu'alaikum wr wb
> Kid
>
>
>
>
>
>
> On Sat, Oct 31, 2015 at
> 11:24 AM, ris ha [hidden email]
> [belajar-excel] <[hidden email]>
> wrote:
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> Assalamu'alaikum.
> Dear master semua, saya
> punya kesulitan, yaitu Agar InputBox selalu muncul jika
> isinya kosong atau data tidak ditemukan. Saya udah
> mempraktekan, tapi belum ketemu. Kesalahan macro saya
> dimananya ya.... File terlampir
>
> Private Sub
> Workbook_Open()
> Sheets("Opening").Visible = 1
> For Each Sh In ThisWorkbook.Worksheets
> If Sh.Name <> "Opening" Then
> Sh.Visible = 1
> End If
> Next Sh
>
> ID =
> InputBox("Pak " &
> Sheets("DataPassword").Range("C3").Value
> & ", silahkan masukkan password anda.",
> APPNAME)
> Do Until ID <>
> vbNullString
> If ID = vbNullString Then
>     Pesan = MsgBox("Tidak Boleh
> Kosong.", vbOKCancel, APPNAME)
>
> If Pesan = vbOK Then
>         ID =
> InputBox("Pak " &
> Sheets("DataPassword").Range("C3").Value
> & ", silahkan masukkan password anda.",
> APPNAME)
>     Else
>         ThisWorkbook.Save
>         ThisWorkbook.Close
>     End If
> Else
>     With
> Sheets("DataPassword").Range("E6:E10")
>     Set Rng = .Find(what:=ID,
> After:=.Cells(1), LookIn:=xlFormulas, SearchOrder:=xlByRows,
> MatchCase:=True)
>     If Not Rng Is
> Nothing Then
>
> Sheets("Opening").Visible = 1
>         For Each Sh In
> ThisWorkbook.Worksheets
>         If
> Sh.Name <> "Opening" Then
>             Sh.Visible = 2
>         End If
>         Next Sh
>
> Else
>         Pesan =
> MsgBox("Password Salah", vbOKCancel, APPNAME)
>         If Pesan = vbOK Then
>             ID = InputBox("Pak
> " &
> Sheets("DataPassword").Range("C3").Value
> & ", silahkan masukkan password anda.",
> APPNAME)
>         Else
>             ThisWorkbook.Save
>             ThisWorkbook.Close
>         End If
>
> End If
> End With
> End If
> Loop
> ThisWorkbook.Save
> End Sub
> Terima kasih atas bantuan
> dan solusinya...
> SalamHaris
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> #yiv7543240622 #yiv7543240622 --
> #yiv7543240622ygrp-mkp {
> border:1px solid #d8d8d8;font-family:Arial;margin:10px
> 0;padding:0 10px;}
>
> #yiv7543240622 #yiv7543240622ygrp-mkp hr {
> border:1px solid #d8d8d8;}
>
> #yiv7543240622 #yiv7543240622ygrp-mkp #yiv7543240622hd {
> color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
> 0;}
>
> #yiv7543240622 #yiv7543240622ygrp-mkp #yiv7543240622ads {
> margin-bottom:10px;}
>
> #yiv7543240622 #yiv7543240622ygrp-mkp .yiv7543240622ad {
> padding:0 0;}
>
> #yiv7543240622 #yiv7543240622ygrp-mkp .yiv7543240622ad p {
> margin:0;}
>
> #yiv7543240622 #yiv7543240622ygrp-mkp .yiv7543240622ad a {
> color:#0000ff;text-decoration:none;}
> #yiv7543240622 #yiv7543240622ygrp-sponsor
> #yiv7543240622ygrp-lc {
> font-family:Arial;}
>
> #yiv7543240622 #yiv7543240622ygrp-sponsor
> #yiv7543240622ygrp-lc #yiv7543240622hd {
> margin:10px
> 0px;font-weight:700;font-size:78%;line-height:122%;}
>
> #yiv7543240622 #yiv7543240622ygrp-sponsor
> #yiv7543240622ygrp-lc .yiv7543240622ad {
> margin-bottom:10px;padding:0 0;}
>
> #yiv7543240622 #yiv7543240622actions {
> font-family:Verdana;font-size:11px;padding:10px 0;}
>
> #yiv7543240622 #yiv7543240622activity {
>
> background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}
>
> #yiv7543240622 #yiv7543240622activity span {
> font-weight:700;}
>
> #yiv7543240622 #yiv7543240622activity span:first-child {
> text-transform:uppercase;}
>
> #yiv7543240622 #yiv7543240622activity span a {
> color:#5085b6;text-decoration:none;}
>
> #yiv7543240622 #yiv7543240622activity span span {
> color:#ff7900;}
>
> #yiv7543240622 #yiv7543240622activity span
> .yiv7543240622underline {
> text-decoration:underline;}
>
> #yiv7543240622 .yiv7543240622attach {
> clear:both;display:table;font-family:Arial;font-size:12px;padding:10px
> 0;width:400px;}
>
> #yiv7543240622 .yiv7543240622attach div a {
> text-decoration:none;}
>
> #yiv7543240622 .yiv7543240622attach img {
> border:none;padding-right:5px;}
>
> #yiv7543240622 .yiv7543240622attach label {
> display:block;margin-bottom:5px;}
>
> #yiv7543240622 .yiv7543240622attach label a {
> text-decoration:none;}
>
> #yiv7543240622 blockquote {
> margin:0 0 0 4px;}
>
> #yiv7543240622 .yiv7543240622bold {
> font-family:Arial;font-size:13px;font-weight:700;}
>
> #yiv7543240622 .yiv7543240622bold a {
> text-decoration:none;}
>
> #yiv7543240622 dd.yiv7543240622last p a {
> font-family:Verdana;font-weight:700;}
>
> #yiv7543240622 dd.yiv7543240622last p span {
> margin-right:10px;font-family:Verdana;font-weight:700;}
>
> #yiv7543240622 dd.yiv7543240622last p
> span.yiv7543240622yshortcuts {
> margin-right:0;}
>
> #yiv7543240622 div.yiv7543240622attach-table div div a {
> text-decoration:none;}
>
> #yiv7543240622 div.yiv7543240622attach-table {
> width:400px;}
>
> #yiv7543240622 div.yiv7543240622file-title a, #yiv7543240622
> div.yiv7543240622file-title a:active, #yiv7543240622
> div.yiv7543240622file-title a:hover, #yiv7543240622
> div.yiv7543240622file-title a:visited {
> text-decoration:none;}
>
> #yiv7543240622 div.yiv7543240622photo-title a,
> #yiv7543240622 div.yiv7543240622photo-title a:active,
> #yiv7543240622 div.yiv7543240622photo-title a:hover,
> #yiv7543240622 div.yiv7543240622photo-title a:visited {
> text-decoration:none;}
>
> #yiv7543240622 div#yiv7543240622ygrp-mlmsg
> #yiv7543240622ygrp-msg p a span.yiv7543240622yshortcuts {
> font-family:Verdana;font-size:10px;font-weight:normal;}
>
> #yiv7543240622 .yiv7543240622green {
> color:#628c2a;}
>
> #yiv7543240622 .yiv7543240622MsoNormal {
> margin:0 0 0 0;}
>
> #yiv7543240622 o {
> font-size:0;}
>
> #yiv7543240622 #yiv7543240622photos div {
> float:left;width:72px;}
>
> #yiv7543240622 #yiv7543240622photos div div {
> border:1px solid
> #666666;height:62px;overflow:hidden;width:62px;}
>
> #yiv7543240622 #yiv7543240622photos div label {
>
> color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}
>
> #yiv7543240622 #yiv7543240622reco-category {
> font-size:77%;}
>
> #yiv7543240622 #yiv7543240622reco-desc {
> font-size:77%;}
>
> #yiv7543240622 .yiv7543240622replbq {
> margin:4px;}
>
> #yiv7543240622 #yiv7543240622ygrp-actbar div a:first-child {
> margin-right:2px;padding-right:5px;}
>
> #yiv7543240622 #yiv7543240622ygrp-mlmsg {
> font-size:13px;font-family:Arial, helvetica, clean,
> sans-serif;}
>
> #yiv7543240622 #yiv7543240622ygrp-mlmsg table {
> font-size:inherit;font:100%;}
>
> #yiv7543240622 #yiv7543240622ygrp-mlmsg select,
> #yiv7543240622 input, #yiv7543240622 textarea {
> font:99% Arial, Helvetica, clean, sans-serif;}
>
> #yiv7543240622 #yiv7543240622ygrp-mlmsg pre, #yiv7543240622
> code {
> font:115% monospace;}
>
> #yiv7543240622 #yiv7543240622ygrp-mlmsg * {
> line-height:1.22em;}
>
> #yiv7543240622 #yiv7543240622ygrp-mlmsg #yiv7543240622logo {
> padding-bottom:10px;}
>
>
> #yiv7543240622 #yiv7543240622ygrp-msg p a {
> font-family:Verdana;}
>
> #yiv7543240622 #yiv7543240622ygrp-msg
> p#yiv7543240622attach-count span {
> color:#1E66AE;font-weight:700;}
>
> #yiv7543240622 #yiv7543240622ygrp-reco
> #yiv7543240622reco-head {
> color:#ff7900;font-weight:700;}
>
> #yiv7543240622 #yiv7543240622ygrp-reco {
> margin-bottom:20px;padding:0px;}
>
> #yiv7543240622 #yiv7543240622ygrp-sponsor #yiv7543240622ov
> li a {
> font-size:130%;text-decoration:none;}
>
> #yiv7543240622 #yiv7543240622ygrp-sponsor #yiv7543240622ov
> li {
> font-size:77%;list-style-type:square;padding:6px 0;}
>
> #yiv7543240622 #yiv7543240622ygrp-sponsor #yiv7543240622ov
> ul {
> margin:0;padding:0 0 0 8px;}
>
> #yiv7543240622 #yiv7543240622ygrp-text {
> font-family:Georgia;}
>
> #yiv7543240622 #yiv7543240622ygrp-text p {
> margin:0 0 1em 0;}
>
> #yiv7543240622 #yiv7543240622ygrp-text tt {
> font-size:120%;}
>
> #yiv7543240622 #yiv7543240622ygrp-vital ul li:last-child {
> border-right:none !important;
> }
> #yiv7543240622
>
>
>
>