Jumat, 22 Desember 2017

[belajar-excel] Digest Number 4384

14 Messages

Digest #4384
1a
Re: Merubah warna cell yang diupdate by "Heru Safrudin" heru.safrudin
2b
3a
#ask#formula 22122017 by "Rachmat Hidayat"
3b
Re: #ask#formula 22122017 by "salman faeroez" salman.faeroez
3c
Re: #ask#formula 22122017 by "Zainul Ulum" zainul_ulum
3d
Re: #ask#formula 22122017 by "Mr. Kid" nmkid.family@ymail.com
3e
Re: #ask#formula 22122017 by "Rachmat Hidayat"
3f
Re: #ask#formula 22122017 by "Rachmat Hidayat"
4a
4b
Re: Share Workbook yang ada excel table-nya by "Mr. Kid" nmkid.family@ymail.com
4c
4d
Re: Share Workbook yang ada excel table-nya by "Mr. Kid" nmkid.family@ymail.com
5a
Re: memunculkan uraian dibawah kode rekening by "Mr. Kid" nmkid.family@ymail.com

Messages

Thu Dec 21, 2017 9:59 pm (PST) . Posted by:

"Heru Safrudin" heru.safrudin

Terima kash Pak Hendrik,

Saya khawatir data yang saya kirim ke beberapa orang tidak kenal macro, sehingga jika macro tidak aktif maka perubahan yg dilakukan tidak akan kelihatan.

Adakah cara lain yang tidak memakai macro ?

Wassalam

Heru Safrudin

From: belajar-excel@yahoogroups.com [mailto:belajar-excel@yahoogroups.com]
Sent: 20 Desember 2017 14:22
To: 'Heru Safrudin' fcprocessing.bisikediri@bisi.co.id [belajar-excel]
Subject: Re: [belajar-excel] Merubah warna cell yang diupdate

Hai Heru,

Ini adalah Macro warisan mbak Siti.

Option Explicit

Dim otx As String

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

otx = Target(1, 1).Value

End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

If Not otx = "" Then

If Not Target(1, 1).Text = otx Then

Target(1, 1).Interior.Color = vbYellow

End If

End If

End Sub

Pada saat Workbook sdh siap untuk diubah copas Macro di atas ke "This Workbook" pada sisi sebelah kiri VBE Sheet. Perubahan berlaku hanya untuk sel yang ada isinya (termasuk spasi) dan hanya berlaku sekali saja.

Begitu isi sel diubah maka warna interiornya akan berubah menjadi kuning (vbYellow).

Salam,

HK

On Wednesday, 20 December 2017, 11:39:30 AM GMT+7, 'Heru Safrudin' fcprocessing.bisikediri@bisi.co.id [belajar-excel] <belajar-excel@yahoogroups.com> wrote:

Dear All,

اَلسَّــــلَامُ عَلًيْــــكُمْ وَرَحْمَةُ اللـــهِ وَبَرَكَاتُـــهُ

Maaf Langsung pada pertanyaan, Bagaimana cara mendeteksi cell pada worksheet yang terupdate (datanya dirubah) ?

Misal saya ingin isi cell yg terupdate berubah warna interiornya

Mohon pencerahannya

Terima kasih

وَالسَّـــلَامُ عَلَيْـــكُمْ وَرَحْمَةُ اللـــهِ وَبَرَكَاتُـــهُ

Heru Safrudin

Thu Dec 21, 2017 10:01 pm (PST) . Posted by:

"Fatania Latifa"

Dear Master excel,

Mohon info, bagaimana rumus untuk memecah alamat menjadi 2 kolom, dengan
syarat per kolom maksimal 40 karakter, tatpi pemenggalannya bagus, tidak
terpotong suku katanya? terlampir contohnya

Fri Dec 22, 2017 3:28 am (PST) . Posted by:

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

Hai Fatania,

Contoh salah satu formula yang dapat digunakan seperti dalam file terlampir..

Regards,
Kid

2017-12-22 11:36 GMT+07:00 Fatania Latifa fatania.latifa@gmail.com
[belajar-excel] <belajar-excel@yahoogroups.com>:

>
>
> Dear Master excel,
>
> Mohon info, bagaimana rumus untuk memecah alamat menjadi 2 kolom, dengan
> syarat per kolom maksimal 40 karakter, tatpi pemenggalannya bagus, tidak
> terpotong suku katanya? terlampir contohnya
>
>
>

Thu Dec 21, 2017 11:57 pm (PST) . Posted by:

"Rachmat Hidayat"

Dear Master Excel,

Semoga dalam keadaan sehat wal'afiat, mohon bantuan nya bagaimana cara menghilangkan tanda (-) yang berada di belakang angka contoh 009- dan tanda (-) nya dipindahkan kedepan angka tersebut Untuk detail mohon dilihat file excel nya

Sent from Mail for Windows 10

Fri Dec 22, 2017 1:04 am (PST) . Posted by:

"salman faeroez" salman.faeroez

Dear Rachmat,

seperti inikah yang dimaksud?

[image: Gambar sisip 2]

Terlampir ya dan semoga sesuai harapan.
:)

Mungkin ada master-master lain yang lebih sederhana lagi proses nya.
mohon maaf kalo tidak sesuai.

Regards
salman

Pada 21 Desember 2017 23.52, Rachmat Hidayat my.android03@gmail.com
[belajar-excel] <belajar-excel@yahoogroups.com> menulis:

>
>
> Dear Master Excel,
>
>
>
> Semoga dalam keadaan sehat wal'afiat, mohon bantuan nya bagaimana cara
> menghilangkan tanda (-) yang berada di belakang angka contoh *009- *dan
> tanda (-) nya dipindahkan kedepan angka tersebut Untuk detail mohon dilihat
> file excel nya
>
>
>
>
>
>
>
> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for
> Windows 10
>
>
>
>
>

Fri Dec 22, 2017 1:09 am (PST) . Posted by:

"Zainul Ulum" zainul_ulum

Pak Rachmat,

coba rumus ini:
=IF(ISERR(FIND("-",[@ORI])),[@ORI],-1*(SUBSTITUTE([@ORI],"-",REPT(" ",99))))

Thanks,
-zainul

#dikirim_pakai_mail.yahoo.com_tanpa_pulsa#

--------------------------------------------
On Fri, 22/12/17, Rachmat Hidayat my.android03@gmail.com [belajar-excel] <belajar-excel@yahoogroups.com> wrote:

Subject: [belajar-excel] #ask#formula 22122017
To: belajar-excel@yahoogroups.com
Date: Friday, 22 December, 2017, 2:52 PM


 









Dear Master Excel,  Semoga dalam keadaan sehat
wal'afiat, mohon bantuan nya bagaimana cara menghilangkan
tanda (-) yang berada di belakang angka contoh 009-
dan tanda (-) nya dipindahkan kedepan angka tersebut
Untuk detail mohon dilihat file excel nya      Sent from Mail
for Windows 10
 









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

#yiv4479021898 #yiv4479021898ygrp-mkp hr {
border:1px solid #d8d8d8;}

#yiv4479021898 #yiv4479021898ygrp-mkp #yiv4479021898hd {
color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
0;}

#yiv4479021898 #yiv4479021898ygrp-mkp #yiv4479021898ads {
margin-bottom:10px;}

#yiv4479021898 #yiv4479021898ygrp-mkp .yiv4479021898ad {
padding:0 0;}

#yiv4479021898 #yiv4479021898ygrp-mkp .yiv4479021898ad p {
margin:0;}

#yiv4479021898 #yiv4479021898ygrp-mkp .yiv4479021898ad a {
color:#0000ff;text-decoration:none;}
#yiv4479021898 #yiv4479021898ygrp-sponsor
#yiv4479021898ygrp-lc {
font-family:Arial;}

#yiv4479021898 #yiv4479021898ygrp-sponsor
#yiv4479021898ygrp-lc #yiv4479021898hd {
margin:10px
0px;font-weight:700;font-size:78%;line-height:122%;}

#yiv4479021898 #yiv4479021898ygrp-sponsor
#yiv4479021898ygrp-lc .yiv4479021898ad {
margin-bottom:10px;padding:0 0;}

#yiv4479021898 #yiv4479021898actions {
font-family:Verdana;font-size:11px;padding:10px 0;}

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

#yiv4479021898 #yiv4479021898activity span {
font-weight:700;}

#yiv4479021898 #yiv4479021898activity span:first-child {
text-transform:uppercase;}

#yiv4479021898 #yiv4479021898activity span a {
color:#5085b6;text-decoration:none;}

#yiv4479021898 #yiv4479021898activity span span {
color:#ff7900;}

#yiv4479021898 #yiv4479021898activity span
.yiv4479021898underline {
text-decoration:underline;}

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

#yiv4479021898 .yiv4479021898attach div a {
text-decoration:none;}

#yiv4479021898 .yiv4479021898attach img {
border:none;padding-right:5px;}

#yiv4479021898 .yiv4479021898attach label {
display:block;margin-bottom:5px;}

#yiv4479021898 .yiv4479021898attach label a {
text-decoration:none;}

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

#yiv4479021898 .yiv4479021898bold {
font-family:Arial;font-size:13px;font-weight:700;}

#yiv4479021898 .yiv4479021898bold a {
text-decoration:none;}

#yiv4479021898 dd.yiv4479021898last p a {
font-family:Verdana;font-weight:700;}

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

#yiv4479021898 dd.yiv4479021898last p
span.yiv4479021898yshortcuts {
margin-right:0;}

#yiv4479021898 div.yiv4479021898attach-table div div a {
text-decoration:none;}

#yiv4479021898 div.yiv4479021898attach-table {
width:400px;}

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

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

#yiv4479021898 div#yiv4479021898ygrp-mlmsg
#yiv4479021898ygrp-msg p a span.yiv4479021898yshortcuts {
font-family:Verdana;font-size:10px;font-weight:normal;}

#yiv4479021898 .yiv4479021898green {
color:#628c2a;}

#yiv4479021898 .yiv4479021898MsoNormal {
margin:0 0 0 0;}

#yiv4479021898 o {
font-size:0;}

#yiv4479021898 #yiv4479021898photos div {
float:left;width:72px;}

#yiv4479021898 #yiv4479021898photos div div {
border:1px solid
#666666;min-height:62px;overflow:hidden;width:62px;}

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

#yiv4479021898 #yiv4479021898reco-category {
font-size:77%;}

#yiv4479021898 #yiv4479021898reco-desc {
font-size:77%;}

#yiv4479021898 .yiv4479021898replbq {
margin:4px;}

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

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

#yiv4479021898 #yiv4479021898ygrp-mlmsg table {
font-size:inherit;font:100%;}

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

#yiv4479021898 #yiv4479021898ygrp-mlmsg pre, #yiv4479021898
code {
font:115% monospace;}

#yiv4479021898 #yiv4479021898ygrp-mlmsg * {
line-height:1.22em;}

#yiv4479021898 #yiv4479021898ygrp-mlmsg #yiv4479021898logo {
padding-bottom:10px;}


#yiv4479021898 #yiv4479021898ygrp-msg p a {
font-family:Verdana;}

#yiv4479021898 #yiv4479021898ygrp-msg
p#yiv4479021898attach-count span {
color:#1E66AE;font-weight:700;}

#yiv4479021898 #yiv4479021898ygrp-reco
#yiv4479021898reco-head {
color:#ff7900;font-weight:700;}

#yiv4479021898 #yiv4479021898ygrp-reco {
margin-bottom:20px;padding:0px;}

#yiv4479021898 #yiv4479021898ygrp-sponsor #yiv4479021898ov
li a {
font-size:130%;text-decoration:none;}

#yiv4479021898 #yiv4479021898ygrp-sponsor #yiv4479021898ov
li {
font-size:77%;list-style-type:square;padding:6px 0;}

#yiv4479021898 #yiv4479021898ygrp-sponsor #yiv4479021898ov
ul {
margin:0;padding:0 0 0 8px;}

#yiv4479021898 #yiv4479021898ygrp-text {
font-family:Georgia;}

#yiv4479021898 #yiv4479021898ygrp-text p {
margin:0 0 1em 0;}

#yiv4479021898 #yiv4479021898ygrp-text tt {
font-size:120%;}

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


Fri Dec 22, 2017 1:34 am (PST) . Posted by:

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

ikutan ah...

Berhubung tidak tahu seperti apa varian datanya secara pasti, jadi asumsi
yang digunakan :
1. ada records diakhiri spasi
2. ada records yang diakhiri '-'
3. records yang punya '-' selalu diambil 3 char pertama
4. records bertipe teks tanpa '-' diambil apa adanya
5. records bertipe numerik positif diambil apa adanya tetap numerik positif
6. records bertipe numerik negatif menjadi berformat '-000' (dash 3 digit
angka dengan leading zero)

File terlampir.

Regards,
Kid

2017-12-22 14:52 GMT+07:00 Rachmat Hidayat my.android03@gmail.com
[belajar-excel] <belajar-excel@yahoogroups.com>:

>
>
> Dear Master Excel,
>
>
>
> Semoga dalam keadaan sehat wal'afiat, mohon bantuan nya bagaimana cara
> menghilangkan tanda (-) yang berada di belakang angka contoh *009- *dan
> tanda (-) nya dipindahkan kedepan angka tersebut Untuk detail mohon dilihat
> file excel nya
>
>
>
>
>
>
>
> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for
> Windows 10
>
>
>
>
>

Fri Dec 22, 2017 2:28 am (PST) . Posted by:

"Rachmat Hidayat"

Iya betul mas terima kasih ilmu nya

Sent from Mail for Windows 10

From: salman faeroez salman.faeroez@gmail.com [belajar-excel]
Sent: Friday, December 22, 2017 4:08 PM
To: belajar-excel@yahoogroups.com
Subject: Re: [belajar-excel] #ask#formula 22122017

 
Dear Rachmat,
seperti inikah yang dimaksud?

Terlampir ya dan semoga sesuai harapan.
:)
Mungkin ada master-master lain yang lebih sederhana lagi proses nya.
mohon maaf kalo tidak sesuai...

Regards
salman

Pada 21 Desember 2017 23.52, Rachmat Hidayat my.android03@gmail.com [belajar-excel] <belajar-excel@yahoogroups.com> menulis:
 
Dear Master Excel,
 
Semoga dalam keadaan sehat wal'afiat, mohon bantuan nya bagaimana cara menghilangkan tanda (-) yang berada di belakang angka contoh 009- dan tanda (-) nya dipindahkan kedepan angka tersebut Untuk detail mohon dilihat file excel nya
 

 
 
Sent from Mail for Windows 10
 

Fri Dec 22, 2017 4:43 am (PST) . Posted by:

"Rachmat Hidayat"

Terima kasih pak Zainul

Akan saya coba juga untuk formula nya

On Dec 22, 2017 4:09 PM, "Zainul Ulum zainul_ulum@yahoo.com
[belajar-excel]" <belajar-excel@yahoogroups.com> wrote:

>
>
> Pak Rachmat,
>
> coba rumus ini:
> =IF(ISERR(FIND("-",[@ORI])),[@ORI],-1*(SUBSTITUTE([@ORI],"-",REPT("
> ",99))))
>
> Thanks,
> -zainul
>
> #dikirim_pakai_mail.yahoo.com_tanpa_pulsa#
>
> --------------------------------------------
> On Fri, 22/12/17, Rachmat Hidayat my.android03@gmail.com [belajar-excel] <
> belajar-excel@yahoogroups..com> wrote:
>
> Subject: [belajar-excel] #ask#formula 22122017
> To: belajar-excel@yahoogroups.com
> Date: Friday, 22 December, 2017, 2:52 PM
>
>
>
>
>
>
>
>
>
>
>
>
> Dear Master Excel, Semoga dalam keadaan sehat
> wal'afiat, mohon bantuan nya bagaimana cara menghilangkan
> tanda (-) yang berada di belakang angka contoh 009-
> dan tanda (-) nya dipindahkan kedepan angka tersebut
> Untuk detail mohon dilihat file excel nya Sent from Mail
> for Windows 10
>
>
>
>
>
>
>
>
>
>
> #yiv4479021898 #yiv4479021898 --
> #yiv4479021898ygrp-mkp {
> border:1px solid #d8d8d8;font-family:Arial;margin:10px
> 0;padding:0 10px;}
>
> #yiv4479021898 #yiv4479021898ygrp-mkp hr {
> border:1px solid #d8d8d8;}
>
> #yiv4479021898 #yiv4479021898ygrp-mkp #yiv4479021898hd {
> color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
> 0;}
>
> #yiv4479021898 #yiv4479021898ygrp-mkp #yiv4479021898ads {
> margin-bottom:10px;}
>
> #yiv4479021898 #yiv4479021898ygrp-mkp .yiv4479021898ad {
> padding:0 0;}
>
> #yiv4479021898 #yiv4479021898ygrp-mkp .yiv4479021898ad p {
> margin:0;}
>
> #yiv4479021898 #yiv4479021898ygrp-mkp .yiv4479021898ad a {
> color:#0000ff;text-decoration:none;}
> #yiv4479021898 #yiv4479021898ygrp-sponsor
> #yiv4479021898ygrp-lc {
> font-family:Arial;}
>
> #yiv4479021898 #yiv4479021898ygrp-sponsor
> #yiv4479021898ygrp-lc #yiv4479021898hd {
> margin:10px
> 0px;font-weight:700;font-size:78%;line-height:122%;}
>
> #yiv4479021898 #yiv4479021898ygrp-sponsor
> #yiv4479021898ygrp-lc .yiv4479021898ad {
> margin-bottom:10px;padding:0 0;}
>
> #yiv4479021898 #yiv4479021898actions {
> font-family:Verdana;font-size:11px;padding:10px 0;}
>
> #yiv4479021898 #yiv4479021898activity {
> background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;
> padding:10px;}
>
> #yiv4479021898 #yiv4479021898activity span {
> font-weight:700;}
>
> #yiv4479021898 #yiv4479021898activity span:first-child {
> text-transform:uppercase;}
>
> #yiv4479021898 #yiv4479021898activity span a {
> color:#5085b6;text-decoration:none;}
>
> #yiv4479021898 #yiv4479021898activity span span {
> color:#ff7900;}
>
> #yiv4479021898 #yiv4479021898activity span
> .yiv4479021898underline {
> text-decoration:underline;}
>
> #yiv4479021898 .yiv4479021898attach {
> clear:both;display:table;font-family:Arial;font-size:12px;padding:10px
> 0;width:400px;}
>
> #yiv4479021898 .yiv4479021898attach div a {
> text-decoration:none;}
>
> #yiv4479021898 .yiv4479021898attach img {
> border:none;padding-right:5px;}
>
> #yiv4479021898 .yiv4479021898attach label {
> display:block;margin-bottom:5px;}
>
> #yiv4479021898 .yiv4479021898attach label a {
> text-decoration:none;}
>
> #yiv4479021898 blockquote {
> margin:0 0 0 4px;}
>
> #yiv4479021898 .yiv4479021898bold {
> font-family:Arial;font-size:13px;font-weight:700;}
>
> #yiv4479021898 .yiv4479021898bold a {
> text-decoration:none;}
>
> #yiv4479021898 dd.yiv4479021898last p a {
> font-family:Verdana;font-weight:700;}
>
> #yiv4479021898 dd.yiv4479021898last p span {
> margin-right:10px;font-family:Verdana;font-weight:700;}
>
> #yiv4479021898 dd.yiv4479021898last p
> span.yiv4479021898yshortcuts {
> margin-right:0;}
>
> #yiv4479021898 div.yiv4479021898attach-table div div a {
> text-decoration:none;}
>
> #yiv4479021898 div.yiv4479021898attach-table {
> width:400px;}
>
> #yiv4479021898 div.yiv4479021898file-title a, #yiv4479021898
> div.yiv4479021898file-title a:active, #yiv4479021898
> div.yiv4479021898file-title a:hover, #yiv4479021898
> div.yiv4479021898file-title a:visited {
> text-decoration:none;}
>
> #yiv4479021898 div.yiv4479021898photo-title a,
> #yiv4479021898 div.yiv4479021898photo-title a:active,
> #yiv4479021898 div.yiv4479021898photo-title a:hover,
> #yiv4479021898 div.yiv4479021898photo-title a:visited {
> text-decoration:none;}
>
> #yiv4479021898 div#yiv4479021898ygrp-mlmsg
> #yiv4479021898ygrp-msg p a span.yiv4479021898yshortcuts {
> font-family:Verdana;font-size:10px;font-weight:normal;}
>
> #yiv4479021898 .yiv4479021898green {
> color:#628c2a;}
>
> #yiv4479021898 .yiv4479021898MsoNormal {
> margin:0 0 0 0;}
>
> #yiv4479021898 o {
> font-size:0;}
>
> #yiv4479021898 #yiv4479021898photos div {
> float:left;width:72px;}
>
> #yiv4479021898 #yiv4479021898photos div div {
> border:1px solid
> #666666;min-height:62px;overflow:hidden;width:62px;}
>
> #yiv4479021898 #yiv4479021898photos div label {
> color:#666666;font-size:10px;overflow:hidden;text-align:
> center;white-space:nowrap;width:64px;}
>
> #yiv4479021898 #yiv4479021898reco-category {
> font-size:77%;}
>
> #yiv4479021898 #yiv4479021898reco-desc {
> font-size:77%;}
>
> #yiv4479021898 .yiv4479021898replbq {
> margin:4px;}
>
> #yiv4479021898 #yiv4479021898ygrp-actbar div a:first-child {
> margin-right:2px;padding-right:5px;}
>
> #yiv4479021898 #yiv4479021898ygrp-mlmsg {
> font-size:13px;font-family:Arial, helvetica, clean,
> sans-serif;}
>
> #yiv4479021898 #yiv4479021898ygrp-mlmsg table {
> font-size:inherit;font:100%;}
>
> #yiv4479021898 #yiv4479021898ygrp-mlmsg select,
> #yiv4479021898 input, #yiv4479021898 textarea {
> font:99% Arial, Helvetica, clean, sans-serif;}
>
> #yiv4479021898 #yiv4479021898ygrp-mlmsg pre, #yiv4479021898
> code {
> font:115% monospace;}
>
> #yiv4479021898 #yiv4479021898ygrp-mlmsg * {
> line-height:1.22em;}
>
> #yiv4479021898 #yiv4479021898ygrp-mlmsg #yiv4479021898logo {
> padding-bottom:10px;}
>
>
> #yiv4479021898 #yiv4479021898ygrp-msg p a {
> font-family:Verdana;}
>
> #yiv4479021898 #yiv4479021898ygrp-msg
> p#yiv4479021898attach-count span {
> color:#1E66AE;font-weight:700;}
>
> #yiv4479021898 #yiv4479021898ygrp-reco
> #yiv4479021898reco-head {
> color:#ff7900;font-weight:700;}
>
> #yiv4479021898 #yiv4479021898ygrp-reco {
> margin-bottom:20px;padding:0px;}
>
> #yiv4479021898 #yiv4479021898ygrp-sponsor #yiv4479021898ov
> li a {
> font-size:130%;text-decoration:none;}
>
> #yiv4479021898 #yiv4479021898ygrp-sponsor #yiv4479021898ov
> li {
> font-size:77%;list-style-type:square;padding:6px 0;}
>
> #yiv4479021898 #yiv4479021898ygrp-sponsor #yiv4479021898ov
> ul {
> margin:0;padding:0 0 0 8px;}
>
> #yiv4479021898 #yiv4479021898ygrp-text {
> font-family:Georgia;}
>
> #yiv4479021898 #yiv4479021898ygrp-text p {
> margin:0 0 1em 0;}
>
> #yiv4479021898 #yiv4479021898ygrp-text tt {
> font-size:120%;}
>
> #yiv4479021898 #yiv4479021898ygrp-vital ul li:last-child {
> border-right:none !important;
> }
> #yiv4479021898
>
>
>

Fri Dec 22, 2017 12:53 am (PST) . Posted by:

"Zainul Ulum" zainul_ulum

Maturnuwun Mas Kid,
Penjelasannya Padat dan jelas.

Sepertinga saya akan menggunakan back end berupa access database (accdb) dengan stored procedure.
belum mempertimbangkan ke MySQL atau yang lain karena IT admin tidak mengijinkan saya untuk install program baru

Thanks,
-zainul

#dikirim_pakai_mail.yahoo.com_tanpa_pulsa#

--------------------------------------------
On Wed, 20/12/17, 'Mr. Kid' mr.nmkid@gmail.com [belajar-excel] <belajar-excel@yahoogroups.com> wrote:

Subject: Re: [belajar-excel] Share Workbook yang ada excel table-nya
To: "BeExcel" <belajar-excel@yahoogroups.com>
Date: Wednesday, 20 December, 2017, 10:57 PM


 









Wa'alaikumussalam
wr wb
mas Zainul,

By design :
Excel workbook ketika dibuka selalu
berusaha untuk Exclusive (memberi hak write ke seorang user
saja)

Fitur shared workbook
:Fitur ini berusaha untuk memberi hak
Exclusive kepada lebih dari seorang user. Tetapi, fitur ini
memberi batasan ketika ada lebih dari seorang user yang akan
mengubah isi cells (sila lihat di menu Share Workbook tab
Advanced bagian Conflicting blabla). Cells yang diubah bisa
jadi masih kosong (blank cells) maupun sudah ada
isinya.Artinya, shared workbook cukup beresiko
untuk dimanfaatkan dalam proses penyimpanan data, karena
diusahakan sebisa mungkin data yang disimpan dapat terjaga
utuh. Sedangkan fitur ini memungkinkan terjadinya kondisi
data yang benar (hasil input user A) akan terubah oleh data
yang benar lainnya (hasil input user B), sehingga data akan
kehilangan records yang benar.
Aplikasi entri data
:Pada umumnya, sistem data akan membentuk
setidaknya 2 layer, yaitu : 1. Back end data; 2.
Interface.Back end data bisa di text file, Excel
file, database (direkomendasikan)
Interface bisa berupa add in, xlsm
atau xlsb file, desktop application lainnya, dan web base
app (biasanya akan terbentuk 3 layer [three tier])

Back end data dengan Text
file dan Excel :Hak akses terhadap dua format
file ini adalah Exclusive. Jadi, proses penulisan data ke
back end harus dibuatkan sendiri
antriannya.
Back end data dengan database
: (apapun database-nya, mulai dari MS Access, SQL
Server, Oracle, MySQL, dsb yang berupa DBMS)Hak
akses terhadap database adalah shared dengan management
share write dan read yang sudah baik. Jadi tidak perlu repot
membuatkan antrian proses penulisan data.
Kasus Back End Data dengan Excel
: (misal diatur)1. back end data dengan Excel
bernama myData.xlsx (TIDAK shared workbook)
2. interface berupa add-in atau xlsm
atau xlsb (direkomendasikan), TETAPI membuka back end
myData.xlsx hanya sesuai keperluan saja, yaitu saat akan
menulis data dan saat akan membaca data
saja    * Open - write - save - close atau
Open - read - close :: jangan sampai menunggu respon
dari user, apalagi user langsung entri atau edit di
myData.xlsx

Prosedur antrian penulisan data bisa
sebagai berikut :     'deklarasi variabel
proses
     dim wbkApp as
workbook, rngInput as range, wbkDB as workbook, shtDT as
worksheet
    
'init records di interface yang akan ditulis ke back
end
     set wbkAPP =
thisworkbook     set
rngInput=wbkapp.sheets("area input
data").range("a2:c17")
    
     'cek
antrianCOBA_BUKA:      set
wbkdb=workbooks.open( wbkapp.path &
"\myData.xlsx" )      if
wbkdb.readonly then           
wbkdb.close false            goto
COBA_BUKA      endif
      'proses tulis [kalau
sampai di baris ini, berarti back end data telah menyerahkan
hak write secara exclusive kepada wbkApp melalui
wbkDB      set
shtdt=wbkdb.sheets("DATA")    'misal nama
sheet lokasi penulisan adalah 'DATA'
     
rnginput.copy      shtdt.cells(
shtdt.rows.count , "A"
).end(xlup).offset(1).pastespecial xlpastevalues
      wbkdb.close true   
'save n close wbkdb

     'pesan selesai kepada
user      msgbox
"Selesai.",vbinformation,"Tulis ke
xlDBFile"

Catatan :
Pada proses di atas, file
myData.xlsx bisa berisi excel table, excel query table,
excel pivot table, dan sebagainya. Tapi, penulisan data
tetap di suatu range (jika range tepat dibawah Excel Table,
maka Excel Table akan autoresize barisnya).


Obrolan
:Penggunaan database (dbms) sebagai back end
sangat dianjurkan. Proses penulisan data bisa dengan banyak
cara.
Secara umum, urutan proses
penulisan data adalah open connection - execute Insert atau
Update query - Close connection
Varian proses execute insert atau
update query bisa jadi dengan set setiap nilai field lalu
diakhir commit. Tapi saya kurang suka cara ini, terlalu
banyak baris script-nya dan kurang cepat untuk penulisan
records yang banyak sekaligus.

Excel
Table bisa dimanfaatkan untuk menyusun bunyi query insert
atau update di sebuah kolom dalam Excel Table (kolom ini
bisa di-hide). Lalu execute dilakukan dengan loop seluruh
isi kolom tersebut.Untuk records yang sangat
banyak, tentu hal ini akan memakan waktu dalam melakukan
loop (BUKAN pada eksekusi query-nya).
Data yang sangat banyak biasanya
akan menggunakan DBMS yang besar, seperti SQL Server (edisi
Express bisa 10GB tanpa trik, dan bisa dijadikan multi
database jika data lebih dari 10GB).Dengan
DBMS seperti SQL Server, akan ada lebih banyak opsi dalam
penulisan data, mulai dari pass through query (saya kurang
suka cara ini, karena terlalu lambat untuk ukuran kerja
sebuah DBMS sekelas SQL Server), programming dengan Stored
Precedure (SP), dan sebagainya.

Input data di Excel, database
di SQL Server, jumlah records cukup banyak (misal sekitar
200K records), dengan membuat SP di dalam database dan SP
dieksekusi oleh Excel, maka proses penulisan data bisa cuma
beberapa detik saja (relatif terhadap spesifikasi komputer
ya). Sedangkan dengan loop execute query insert bisa sekitar
1 sampai 2 menit.
Wassalamu'alaikum wr
wbKid


2017-12-20 12:51 GMT+07:00
zainul_ulum@yahoo.com
[belajar-excel] <belajar-excel@yahoogroups.com>:















 









Dear Be-excel,Saya mulai thread dari
jawaban Mas Kid mengenai shared workbook.
Latar belakang:
Saya membuat aplikasi vba excel
dalam bentuk addin (extensi xlam) untuk otomatisasi sebuah
file excel yang saya pakai sebagai database
(excel-database). Pada file excel-database tersebut terdiri
dari beberapa sheet yang berisi data berupa excel
table. 
Seiring
dengan perkembangan penambahan data tiap hari, saya
berencana menge-set excel-database tersebut menjadi
multi-user dengan setting shared workbook tetapi saat diset
sebagai shared workbook, program excel menginformasikan
bahwa tool shared workbook tidak bisa digunakan kalo
terdapat object excel table dalam workbook.
Pertanyaan / bahan
diskusi:1.  Apakah ada cara lain agar bisa
sharing workbook yang ada object excel table
nya?2. Jika nomer #1 tidak bisa, saya berencana
mengkonversi excel-database tersebut ke microsoft access
(*.accdb) , tetapi proses input dan output tetap di
excel.saya telah membuat vba code sederhana untuk
connect ke access
sbb:'=============================
========Option ExplicitConst
sProvider As String =
"Microsoft.ACE.OLEDB.12.0"Dim
sConnString As StringDim cnn As
ADODB.Connection
Private Function
CanConnectAccess(DbFile As String, rtnErr As String) As
Boolean        sConnString =
"Provider=" & sProvider & ";"
& _        "Data Source=" &
DbFile & ";" & _       
"Persist Security Info=False;" 
      'create a new connection to access
database    CanConnectAccess =
True    rtnErr = vbNullString 
      Set cnn = New
ADODB.Connection    On Error Resume
Next    cnn.Open sConnString    If
Err..Number Then        rtnErr =
Err.Description        CanConnectAccess =
False        Err.Clear    End
IfEnd
Function'=============================
=dari vba code di atas, bagian mana yang perlu
dirubah agar database access bisa untuk multi
user?
Terimkasih
banyak sebelumnya. Mohon maaf jika terlalu
panjang.
Wassalamu'alaikum wr
wb.-zainul



































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

#yiv3560235441 #yiv3560235441ygrp-mkp hr {
border:1px solid #d8d8d8;}

#yiv3560235441 #yiv3560235441ygrp-mkp #yiv3560235441hd {
color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
0;}

#yiv3560235441 #yiv3560235441ygrp-mkp #yiv3560235441ads {
margin-bottom:10px;}

#yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad {
padding:0 0;}

#yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad p {
margin:0;}

#yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad a {
color:#0000ff;text-decoration:none;}
#yiv3560235441 #yiv3560235441ygrp-sponsor
#yiv3560235441ygrp-lc {
font-family:Arial;}

#yiv3560235441 #yiv3560235441ygrp-sponsor
#yiv3560235441ygrp-lc #yiv3560235441hd {
margin:10px
0px;font-weight:700;font-size:78%;line-height:122%;}

#yiv3560235441 #yiv3560235441ygrp-sponsor
#yiv3560235441ygrp-lc .yiv3560235441ad {
margin-bottom:10px;padding:0 0;}

#yiv3560235441 #yiv3560235441actions {
font-family:Verdana;font-size:11px;padding:10px 0;}

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

#yiv3560235441 #yiv3560235441activity span {
font-weight:700;}

#yiv3560235441 #yiv3560235441activity span:first-child {
text-transform:uppercase;}

#yiv3560235441 #yiv3560235441activity span a {
color:#5085b6;text-decoration:none;}

#yiv3560235441 #yiv3560235441activity span span {
color:#ff7900;}

#yiv3560235441 #yiv3560235441activity span
.yiv3560235441underline {
text-decoration:underline;}

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

#yiv3560235441 .yiv3560235441attach div a {
text-decoration:none;}

#yiv3560235441 .yiv3560235441attach img {
border:none;padding-right:5px;}

#yiv3560235441 .yiv3560235441attach label {
display:block;margin-bottom:5px;}

#yiv3560235441 .yiv3560235441attach label a {
text-decoration:none;}

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

#yiv3560235441 .yiv3560235441bold {
font-family:Arial;font-size:13px;font-weight:700;}

#yiv3560235441 .yiv3560235441bold a {
text-decoration:none;}

#yiv3560235441 dd.yiv3560235441last p a {
font-family:Verdana;font-weight:700;}

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

#yiv3560235441 dd.yiv3560235441last p
span.yiv3560235441yshortcuts {
margin-right:0;}

#yiv3560235441 div.yiv3560235441attach-table div div a {
text-decoration:none;}

#yiv3560235441 div.yiv3560235441attach-table {
width:400px;}

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

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

#yiv3560235441 div#yiv3560235441ygrp-mlmsg
#yiv3560235441ygrp-msg p a span.yiv3560235441yshortcuts {
font-family:Verdana;font-size:10px;font-weight:normal;}

#yiv3560235441 .yiv3560235441green {
color:#628c2a;}

#yiv3560235441 .yiv3560235441MsoNormal {
margin:0 0 0 0;}

#yiv3560235441 o {
font-size:0;}

#yiv3560235441 #yiv3560235441photos div {
float:left;width:72px;}

#yiv3560235441 #yiv3560235441photos div div {
border:1px solid
#666666;min-height:62px;overflow:hidden;width:62px;}

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

#yiv3560235441 #yiv3560235441reco-category {
font-size:77%;}

#yiv3560235441 #yiv3560235441reco-desc {
font-size:77%;}

#yiv3560235441 .yiv3560235441replbq {
margin:4px;}

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

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

#yiv3560235441 #yiv3560235441ygrp-mlmsg table {
font-size:inherit;font:100%;}

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

#yiv3560235441 #yiv3560235441ygrp-mlmsg pre, #yiv3560235441
code {
font:115% monospace;}

#yiv3560235441 #yiv3560235441ygrp-mlmsg * {
line-height:1.22em;}

#yiv3560235441 #yiv3560235441ygrp-mlmsg #yiv3560235441logo {
padding-bottom:10px;}


#yiv3560235441 #yiv3560235441ygrp-msg p a {
font-family:Verdana;}

#yiv3560235441 #yiv3560235441ygrp-msg
p#yiv3560235441attach-count span {
color:#1E66AE;font-weight:700;}

#yiv3560235441 #yiv3560235441ygrp-reco
#yiv3560235441reco-head {
color:#ff7900;font-weight:700;}

#yiv3560235441 #yiv3560235441ygrp-reco {
margin-bottom:20px;padding:0px;}

#yiv3560235441 #yiv3560235441ygrp-sponsor #yiv3560235441ov
li a {
font-size:130%;text-decoration:none;}

#yiv3560235441 #yiv3560235441ygrp-sponsor #yiv3560235441ov
li {
font-size:77%;list-style-type:square;padding:6px 0;}

#yiv3560235441 #yiv3560235441ygrp-sponsor #yiv3560235441ov
ul {
margin:0;padding:0 0 0 8px;}

#yiv3560235441 #yiv3560235441ygrp-text {
font-family:Georgia;}

#yiv3560235441 #yiv3560235441ygrp-text p {
margin:0 0 1em 0;}

#yiv3560235441 #yiv3560235441ygrp-text tt {
font-size:120%;}

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


Fri Dec 22, 2017 1:02 am (PST) . Posted by:

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

Mas Zainul,
Sepertinya kalau pakai Access, langsung Execute query saja.
Saya tahunya, produk MS yang punya Stored Procedure adalah MS SQL Server.
Metode dalam SP yang menggunakan Bulk Insert dari text file (supaya cepat
untuk data yang banyak) membutuhkan sharing folder disisi server.
Jadi, client (user) melakukan save text file ke komputer server.

Wassalam,
Kid

2017-12-22 15:53 GMT+07:00 Zainul Ulum zainul_ulum@yahoo.com
[belajar-excel] <belajar-excel@yahoogroups.com>:

>
>
> Maturnuwun Mas Kid,
> Penjelasannya Padat dan jelas.
>
> Sepertinga saya akan menggunakan back end berupa access database (accdb)
> dengan stored procedure.
> belum mempertimbangkan ke MySQL atau yang lain karena IT admin tidak
> mengijinkan saya untuk install program baru
>
> Thanks,
> -zainul
>
> #dikirim_pakai_mail.yahoo.com_tanpa_pulsa#
>
> --------------------------------------------
> On Wed, 20/12/17, 'Mr. Kid' mr.nmkid@gmail.com [belajar-excel] <
> belajar-excel@yahoogroups.com> wrote:
>
> Subject: Re: [belajar-excel] Share Workbook yang ada excel table-nya
> To: "BeExcel" <belajar-excel@yahoogroups.com>
> Date: Wednesday, 20 December, 2017, 10:57 PM
>
>
>
>
>
>
>
>
>
>
>
>
> Wa'alaikumussalam
> wr wb
> mas Zainul,
>
> By design :
> Excel workbook ketika dibuka selalu
> berusaha untuk Exclusive (memberi hak write ke seorang user
> saja)
>
> Fitur shared workbook
> :Fitur ini berusaha untuk memberi hak
> Exclusive kepada lebih dari seorang user. Tetapi, fitur ini
> memberi batasan ketika ada lebih dari seorang user yang akan
> mengubah isi cells (sila lihat di menu Share Workbook tab
> Advanced bagian Conflicting blabla). Cells yang diubah bisa
> jadi masih kosong (blank cells) maupun sudah ada
> isinya.Artinya, shared workbook cukup beresiko
> untuk dimanfaatkan dalam proses penyimpanan data, karena
> diusahakan sebisa mungkin data yang disimpan dapat terjaga
> utuh. Sedangkan fitur ini memungkinkan terjadinya kondisi
> data yang benar (hasil input user A) akan terubah oleh data
> yang benar lainnya (hasil input user B), sehingga data akan
> kehilangan records yang benar.
> Aplikasi entri data
> :Pada umumnya, sistem data akan membentuk
> setidaknya 2 layer, yaitu : 1. Back end data; 2.
> Interface.Back end data bisa di text file, Excel
> file, database (direkomendasikan)
> Interface bisa berupa add in, xlsm
> atau xlsb file, desktop application lainnya, dan web base
> app (biasanya akan terbentuk 3 layer [three tier])
>
> Back end data dengan Text
> file dan Excel :Hak akses terhadap dua format
> file ini adalah Exclusive. Jadi, proses penulisan data ke
> back end harus dibuatkan sendiri
> antriannya.
> Back end data dengan database
> : (apapun database-nya, mulai dari MS Access, SQL
> Server, Oracle, MySQL, dsb yang berupa DBMS)Hak
> akses terhadap database adalah shared dengan management
> share write dan read yang sudah baik. Jadi tidak perlu repot
> membuatkan antrian proses penulisan data.
> Kasus Back End Data dengan Excel
> : (misal diatur)1. back end data dengan Excel
> bernama myData.xlsx (TIDAK shared workbook)
> 2. interface berupa add-in atau xlsm
> atau xlsb (direkomendasikan), TETAPI membuka back end
> myData.xlsx hanya sesuai keperluan saja, yaitu saat akan
> menulis data dan saat akan membaca data
> saja * Open - write - save - close atau
> Open - read - close :: jangan sampai menunggu respon
> dari user, apalagi user langsung entri atau edit di
> myData.xlsx
>
> Prosedur antrian penulisan data bisa
> sebagai berikut : 'deklarasi variabel
> proses
> dim wbkApp as
> workbook, rngInput as range, wbkDB as workbook, shtDT as
> worksheet
>
> 'init records di interface yang akan ditulis ke back
> end
> set wbkAPP =
> thisworkbook set
> rngInput=wbkapp.sheets("area input
> data").range("a2:c17")
>
> 'cek
> antrianCOBA_BUKA: set
>
> wbkdb=workbooks.open( wbkapp.path &
> "\myData.xlsx" ) if
> wbkdb.readonly then
> wbkdb.close false goto
> COBA_BUKA endif
> 'proses tulis [kalau
> sampai di baris ini, berarti back end data telah menyerahkan
> hak write secara exclusive kepada wbkApp melalui
> wbkDB set
> shtdt=wbkdb.sheets("DATA") 'misal nama
> sheet lokasi penulisan adalah 'DATA'
>
> rnginput.copy shtdt.cells(
> shtdt.rows.count , "A"
> ).end(xlup).offset(1).pastespecial xlpastevalues
> wbkdb.close true
> 'save n close wbkdb
>
> 'pesan selesai kepada
> user msgbox
> "Selesai.",vbinformation,"Tulis ke
> xlDBFile"
>
> Catatan :
> Pada proses di atas, file
> myData.xlsx bisa berisi excel table, excel query table,
> excel pivot table, dan sebagainya. Tapi, penulisan data
> tetap di suatu range (jika range tepat dibawah Excel Table,
> maka Excel Table akan autoresize barisnya).
>
>
> Obrolan
> :Penggunaan database (dbms) sebagai back end
> sangat dianjurkan. Proses penulisan data bisa dengan banyak
> cara.
> Secara umum, urutan proses
> penulisan data adalah open connection - execute Insert atau
> Update query - Close connection
> Varian proses execute insert atau
> update query bisa jadi dengan set setiap nilai field lalu
> diakhir commit. Tapi saya kurang suka cara ini, terlalu
> banyak baris script-nya dan kurang cepat untuk penulisan
> records yang banyak sekaligus.
>
> Excel
> Table bisa dimanfaatkan untuk menyusun bunyi query insert
> atau update di sebuah kolom dalam Excel Table (kolom ini
> bisa di-hide). Lalu execute dilakukan dengan loop seluruh
> isi kolom tersebut.Untuk records yang sangat
> banyak, tentu hal ini akan memakan waktu dalam melakukan
> loop (BUKAN pada eksekusi query-nya).
> Data yang sangat banyak biasanya
> akan menggunakan DBMS yang besar, seperti SQL Server (edisi
> Express bisa 10GB tanpa trik, dan bisa dijadikan multi
> database jika data lebih dari 10GB).Dengan
> DBMS seperti SQL Server, akan ada lebih banyak opsi dalam
> penulisan data, mulai dari pass through query (saya kurang
> suka cara ini, karena terlalu lambat untuk ukuran kerja
> sebuah DBMS sekelas SQL Server), programming dengan Stored
> Precedure (SP), dan sebagainya.
>
> Input data di Excel, database
> di SQL Server, jumlah records cukup banyak (misal sekitar
> 200K records), dengan membuat SP di dalam database dan SP
> dieksekusi oleh Excel, maka proses penulisan data bisa cuma
> beberapa detik saja (relatif terhadap spesifikasi komputer
> ya). Sedangkan dengan loop execute query insert bisa sekitar
> 1 sampai 2 menit.
> Wassalamu'alaikum wr
> wbKid
>
>
> 2017-12-20 12:51 GMT+07:00
> zainul_ulum@yahoo.com
> [belajar-excel] <belajar-excel@yahoogroups.com>:
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> Dear Be-excel,Saya mulai thread dari
> jawaban Mas Kid mengenai shared workbook.
> Latar belakang:
> Saya membuat aplikasi vba excel
> dalam bentuk addin (extensi xlam) untuk otomatisasi sebuah
> file excel yang saya pakai sebagai database
> (excel-database). Pada file excel-database tersebut terdiri
> dari beberapa sheet yang berisi data berupa excel
> table.
> Seiring
> dengan perkembangan penambahan data tiap hari, saya
> berencana menge-set excel-database tersebut menjadi
> multi-user dengan setting shared workbook tetapi saat diset
> sebagai shared workbook, program excel menginformasikan
> bahwa tool shared workbook tidak bisa digunakan kalo
> terdapat object excel table dalam workbook.
> Pertanyaan / bahan
> diskusi:1. Apakah ada cara lain agar bisa
> sharing workbook yang ada object excel table
> nya?2. Jika nomer #1 tidak bisa, saya berencana
> mengkonversi excel-database tersebut ke microsoft access
> (*.accdb) , tetapi proses input dan output tetap di
> excel.saya telah membuat vba code sederhana untuk
> connect ke access
> sbb:'=============================
> ========Option ExplicitConst
> sProvider As String =
> "Microsoft.ACE.OLEDB.12.0"Dim
> sConnString As StringDim cnn As
> ADODB.Connection
> Private Function
> CanConnectAccess(DbFile As String, rtnErr As String) As
> Boolean sConnString =
> "Provider=" & sProvider & ";"
> & _ "Data Source=" &
> DbFile & ";" & _
> "Persist Security Info=False;"
> 'create a new connection to access
> database CanConnectAccess =
> True rtnErr = vbNullString
> Set cnn = New
> ADODB.Connection On Error Resume
> Next cnn.Open sConnString If
> Err..Number Then rtnErr =
> Err.Description CanConnectAccess =
> False Err.Clear End
> IfEnd
> Function'=============================
> =dari vba code di atas, bagian mana yang perlu
> dirubah agar database access bisa untuk multi
> user?
> Terimkasih
> banyak sebelumnya. Mohon maaf jika terlalu
> panjang.
> Wassalamu'alaikum wr
> wb.-zainul
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> #yiv3560235441 #yiv3560235441 --
> #yiv3560235441ygrp-mkp {
> border:1px solid #d8d8d8;font-family:Arial;margin:10px
> 0;padding:0 10px;}
>
> #yiv3560235441 #yiv3560235441ygrp-mkp hr {
> border:1px solid #d8d8d8;}
>
> #yiv3560235441 #yiv3560235441ygrp-mkp #yiv3560235441hd {
> color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
> 0;}
>
> #yiv3560235441 #yiv3560235441ygrp-mkp #yiv3560235441ads {
> margin-bottom:10px;}
>
> #yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad {
> padding:0 0;}
>
> #yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad p {
> margin:0;}
>
> #yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad a {
> color:#0000ff;text-decoration:none;}
> #yiv3560235441 #yiv3560235441ygrp-sponsor
> #yiv3560235441ygrp-lc {
> font-family:Arial;}
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor
> #yiv3560235441ygrp-lc #yiv3560235441hd {
> margin:10px
> 0px;font-weight:700;font-size:78%;line-height:122%;}
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor
> #yiv3560235441ygrp-lc .yiv3560235441ad {
> margin-bottom:10px;padding:0 0;}
>
> #yiv3560235441 #yiv3560235441actions {
> font-family:Verdana;font-size:11px;padding:10px 0;}
>
> #yiv3560235441 #yiv3560235441activity {
> background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;
> padding:10px;}
>
> #yiv3560235441 #yiv3560235441activity span {
> font-weight:700;}
>
> #yiv3560235441 #yiv3560235441activity span:first-child {
> text-transform:uppercase;}
>
> #yiv3560235441 #yiv3560235441activity span a {
> color:#5085b6;text-decoration:none;}
>
> #yiv3560235441 #yiv3560235441activity span span {
> color:#ff7900;}
>
> #yiv3560235441 #yiv3560235441activity span
> .yiv3560235441underline {
> text-decoration:underline;}
>
> #yiv3560235441 .yiv3560235441attach {
> clear:both;display:table;font-family:Arial;font-size:12px;padding:10px
> 0;width:400px;}
>
> #yiv3560235441 .yiv3560235441attach div a {
> text-decoration:none;}
>
> #yiv3560235441 .yiv3560235441attach img {
> border:none;padding-right:5px;}
>
> #yiv3560235441 .yiv3560235441attach label {
> display:block;margin-bottom:5px;}
>
> #yiv3560235441 .yiv3560235441attach label a {
> text-decoration:none;}
>
> #yiv3560235441 blockquote {
> margin:0 0 0 4px;}
>
> #yiv3560235441 .yiv3560235441bold {
> font-family:Arial;font-size:13px;font-weight:700;}
>
> #yiv3560235441 .yiv3560235441bold a {
> text-decoration:none;}
>
> #yiv3560235441 dd.yiv3560235441last p a {
> font-family:Verdana;font-weight:700;}
>
> #yiv3560235441 dd.yiv3560235441last p span {
> margin-right:10px;font-family:Verdana;font-weight:700;}
>
> #yiv3560235441 dd.yiv3560235441last p
> span.yiv3560235441yshortcuts {
> margin-right:0;}
>
> #yiv3560235441 div.yiv3560235441attach-table div div a {
> text-decoration:none;}
>
> #yiv3560235441 div.yiv3560235441attach-table {
> width:400px;}
>
> #yiv3560235441 div.yiv3560235441file-title a, #yiv3560235441
> div.yiv3560235441file-title a:active, #yiv3560235441
> div.yiv3560235441file-title a:hover, #yiv3560235441
> div.yiv3560235441file-title a:visited {
> text-decoration:none;}
>
> #yiv3560235441 div.yiv3560235441photo-title a,
> #yiv3560235441 div.yiv3560235441photo-title a:active,
> #yiv3560235441 div.yiv3560235441photo-title a:hover,
> #yiv3560235441 div.yiv3560235441photo-title a:visited {
> text-decoration:none;}
>
> #yiv3560235441 div#yiv3560235441ygrp-mlmsg
> #yiv3560235441ygrp-msg p a span.yiv3560235441yshortcuts {
> font-family:Verdana;font-size:10px;font-weight:normal;}
>
> #yiv3560235441 .yiv3560235441green {
> color:#628c2a;}
>
> #yiv3560235441 .yiv3560235441MsoNormal {
> margin:0 0 0 0;}
>
> #yiv3560235441 o {
> font-size:0;}
>
> #yiv3560235441 #yiv3560235441photos div {
> float:left;width:72px;}
>
> #yiv3560235441 #yiv3560235441photos div div {
> border:1px solid
> #666666;min-height:62px;overflow:hidden;width:62px;}
>
> #yiv3560235441 #yiv3560235441photos div label {
> color:#666666;font-size:10px;overflow:hidden;text-align:
> center;white-space:nowrap;width:64px;}
>
> #yiv3560235441 #yiv3560235441reco-category {
> font-size:77%;}
>
> #yiv3560235441 #yiv3560235441reco-desc {
> font-size:77%;}
>
> #yiv3560235441 .yiv3560235441replbq {
> margin:4px;}
>
> #yiv3560235441 #yiv3560235441ygrp-actbar div a:first-child {
> margin-right:2px;padding-right:5px;}
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg {
> font-size:13px;font-family:Arial, helvetica, clean,
> sans-serif;}
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg table {
> font-size:inherit;font:100%;}
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg select,
> #yiv3560235441 input, #yiv3560235441 textarea {
> font:99% Arial, Helvetica, clean, sans-serif;}
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg pre, #yiv3560235441
> code {
> font:115% monospace;}
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg * {
> line-height:1.22em;}
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg #yiv3560235441logo {
> padding-bottom:10px;}
>
>
> #yiv3560235441 #yiv3560235441ygrp-msg p a {
> font-family:Verdana;}
>
> #yiv3560235441 #yiv3560235441ygrp-msg
> p#yiv3560235441attach-count span {
> color:#1E66AE;font-weight:700;}
>
> #yiv3560235441 #yiv3560235441ygrp-reco
> #yiv3560235441reco-head {
> color:#ff7900;font-weight:700;}
>
> #yiv3560235441 #yiv3560235441ygrp-reco {
> margin-bottom:20px;padding:0px;}
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor #yiv3560235441ov
> li a {
> font-size:130%;text-decoration:none;}
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor #yiv3560235441ov
> li {
> font-size:77%;list-style-type:square;padding:6px 0;}
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor #yiv3560235441ov
> ul {
> margin:0;padding:0 0 0 8px;}
>
> #yiv3560235441 #yiv3560235441ygrp-text {
> font-family:Georgia;}
>
> #yiv3560235441 #yiv3560235441ygrp-text p {
> margin:0 0 1em 0;}
>
> #yiv3560235441 #yiv3560235441ygrp-text tt {
> font-size:120%;}
>
> #yiv3560235441 #yiv3560235441ygrp-vital ul li:last-child {
> border-right:none !important;
> }
> #yiv3560235441
>
>
>

Fri Dec 22, 2017 1:17 am (PST) . Posted by:

"Zainul Ulum" zainul_ulum

Terimakasih infonya mas Kid,
jika tidak ada fasilitas stored procedure di access, berarti harus building query.
Untuk query yang panjang, biasanya saya menggunakan bantuan vba di excel kemudian di execute query menggunakan function sbb:
'=================
Private Function CanOpenRecordSet(sSql As String, rsRtn As ADODB.Recordset, rtnErr As String) As Boolean
Dim rs As New ADODB.Recordset
CanOpenRecordSet = True
On Error Resume Next
'Set rs = cnn.Execute(sSql)
rs.Open sSql, cnn, adOpenKeyset, adLockReadOnly
Set rsRtn = rs
If Err.Number Or rsRtn.RecordCount < 0 Then
CanOpenRecordSet = False
rtnErr = Err.Description
Err.Clear
Exit Function
End If
End Function
'===================================

Lebih cepat atau ekfektif mana antara:
1. Running sql di vba seperti contoh di atas
ataukah
2. Running di vba tapi sql sudah menjadi object query di access.

Wassalam,
-zainul

#dikirim_pakai_mail.yahoo.com_tanpa_pulsa#

--------------------------------------------
On Fri, 22/12/17, 'Mr. Kid' mr.nmkid@gmail.com [belajar-excel] <belajar-excel@yahoogroups.com> wrote:

Subject: Re: [belajar-excel] Share Workbook yang ada excel table-nya
To: "BeExcel" <belajar-excel@yahoogroups.com>
Date: Friday, 22 December, 2017, 4:01 PM


 









Mas
Zainul,
Sepertinya kalau pakai
Access, langsung Execute query saja.Saya tahunya,
produk MS yang punya Stored Procedure adalah MS SQL
Server.Metode dalam SP yang menggunakan Bulk
Insert dari text file (supaya cepat untuk data yang banyak)
membutuhkan sharing folder disisi server.Jadi,
client (user) melakukan save text file ke komputer
server.

Wassalam,
Kid


2017-12-22 15:53 GMT+07:00
Zainul Ulum zainul_ulum@yahoo.com
[belajar-excel] <belajar-excel@yahoogroups.com>:















 









Maturnuwun Mas Kid,

Penjelasannya Padat dan jelas.



Sepertinga saya akan menggunakan back end berupa access
database (accdb) dengan stored procedure.

belum mempertimbangkan ke MySQL atau yang lain karena IT
admin tidak mengijinkan saya untuk install program baru



Thanks,

-zainul



#dikirim_pakai_mail.yahoo.com_ tanpa_pulsa#



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

On Wed, 20/12/17, 'Mr. Kid' mr.nmkid@gmail.com
[belajar-excel] <belajar-excel@yahoogroups.com
> wrote:



Subject: Re: [belajar-excel] Share Workbook yang ada excel
table-nya

To: "BeExcel" <belajar-excel@yahoogroups.com
>

Date: Wednesday, 20 December, 2017, 10:57 PM





 



















Wa'alaikumussalam

wr wb

mas Zainul,



By design :

Excel workbook ketika dibuka selalu

berusaha untuk Exclusive (memberi hak write ke seorang
user

saja)



Fitur shared workbook

:Fitur ini berusaha untuk memberi hak

Exclusive kepada lebih dari seorang user. Tetapi, fitur
ini

memberi batasan ketika ada lebih dari seorang user yang
akan

mengubah isi cells (sila lihat di menu Share Workbook
tab

Advanced bagian Conflicting blabla). Cells yang diubah
bisa

jadi masih kosong (blank cells) maupun sudah ada

isinya.Artinya, shared workbook cukup beresiko

untuk dimanfaatkan dalam proses penyimpanan data, karena

diusahakan sebisa mungkin data yang disimpan dapat
terjaga

utuh. Sedangkan fitur ini memungkinkan terjadinya
kondisi

data yang benar (hasil input user A) akan terubah oleh
data

yang benar lainnya (hasil input user B), sehingga data
akan

kehilangan records yang benar.

Aplikasi entri data

:Pada umumnya, sistem data akan membentuk

setidaknya 2 layer, yaitu : 1. Back end data; 2.

Interface.Back end data bisa di text file, Excel

file, database (direkomendasikan)

Interface bisa berupa add in, xlsm

atau xlsb file, desktop application lainnya, dan web
base

app (biasanya akan terbentuk 3 layer [three tier])



Back end data dengan Text

file dan Excel :Hak akses terhadap dua format

file ini adalah Exclusive. Jadi, proses penulisan data
ke

back end harus dibuatkan sendiri

antriannya.

Back end data dengan database

: (apapun database-nya, mulai dari MS Access, SQL

Server, Oracle, MySQL, dsb yang berupa DBMS)Hak

akses terhadap database adalah shared dengan management

share write dan read yang sudah baik. Jadi tidak perlu
repot

membuatkan antrian proses penulisan data.

Kasus Back End Data dengan Excel

: (misal diatur)1. back end data dengan Excel

bernama myData.xlsx (TIDAK shared workbook)

2. interface berupa add-in atau xlsm

atau xlsb (direkomendasikan), TETAPI membuka back end

myData.xlsx hanya sesuai keperluan saja, yaitu saat akan

menulis data dan saat akan membaca data

saja    * Open - write - save - close atau

Open - read - close :: jangan sampai menunggu respon

dari user, apalagi user langsung entri atau edit di

myData.xlsx



Prosedur antrian penulisan data bisa

sebagai berikut :     'deklarasi variabel

proses

     dim wbkApp as

workbook, rngInput as range, wbkDB as workbook, shtDT as

worksheet

    

'init records di interface yang akan ditulis ke back

end

     set wbkAPP =

thisworkbook     set

rngInput=wbkapp.sheets("area input

data").range("a2:c17")

    

     'cek

antrianCOBA_BUKA:      set

wbkdb=workbooks.open( wbkapp.path &

"\myData.xlsx" )      if

wbkdb.readonly then           

wbkdb.close false            goto

COBA_BUKA      endif

      'proses tulis [kalau

sampai di baris ini, berarti back end data telah
menyerahkan

hak write secara exclusive kepada wbkApp melalui

wbkDB      set

shtdt=wbkdb.sheets("DATA")    'misal
nama

sheet lokasi penulisan adalah 'DATA'

     

rnginput.copy      shtdt.cells(

shtdt.rows.count , "A"

).end(xlup).offset(1). pastespecial xlpastevalues

      wbkdb.close true   

'save n close wbkdb



     'pesan selesai kepada

user      msgbox

"Selesai.",vbinformation," Tulis ke

xlDBFile"



Catatan :

Pada proses di atas, file

myData.xlsx bisa berisi excel table, excel query table,

excel pivot table, dan sebagainya. Tapi, penulisan data

tetap di suatu range (jika range tepat dibawah Excel
Table,

maka Excel Table akan autoresize barisnya).





Obrolan

:Penggunaan database (dbms) sebagai back end

sangat dianjurkan. Proses penulisan data bisa dengan
banyak

cara.

Secara umum, urutan proses

penulisan data adalah open connection - execute Insert
atau

Update query - Close connection

Varian proses execute insert atau

update query bisa jadi dengan set setiap nilai field
lalu

diakhir commit. Tapi saya kurang suka cara ini, terlalu

banyak baris script-nya dan kurang cepat untuk penulisan

records yang banyak sekaligus.



Excel

Table bisa dimanfaatkan untuk menyusun bunyi query
insert

atau update di sebuah kolom dalam Excel Table (kolom ini

bisa di-hide). Lalu execute dilakukan dengan loop
seluruh

isi kolom tersebut.Untuk records yang sangat

banyak, tentu hal ini akan memakan waktu dalam melakukan

loop (BUKAN pada eksekusi query-nya).

Data yang sangat banyak biasanya

akan menggunakan DBMS yang besar, seperti SQL Server
(edisi

Express bisa 10GB tanpa trik, dan bisa dijadikan multi

database jika data lebih dari 10GB).Dengan

DBMS seperti SQL Server, akan ada lebih banyak opsi
dalam

penulisan data, mulai dari pass through query (saya
kurang

suka cara ini, karena terlalu lambat untuk ukuran kerja

sebuah DBMS sekelas SQL Server), programming dengan
Stored

Precedure (SP), dan sebagainya.



Input data di Excel, database

di SQL Server, jumlah records cukup banyak (misal
sekitar

200K records), dengan membuat SP di dalam database dan
SP

dieksekusi oleh Excel, maka proses penulisan data bisa
cuma

beberapa detik saja (relatif terhadap spesifikasi
komputer

ya). Sedangkan dengan loop execute query insert bisa
sekitar

1 sampai 2 menit.

Wassalamu'alaikum wr

wbKid





2017-12-20 12:51 GMT+07:00

zainul_ulum@yahoo.com

[belajar-excel] <belajar-excel@yahoogroups.com
>:































 



















Dear Be-excel,Saya mulai thread dari

jawaban Mas Kid mengenai shared workbook.

Latar belakang:

Saya membuat aplikasi vba excel

dalam bentuk addin (extensi xlam) untuk otomatisasi
sebuah

file excel yang saya pakai sebagai database

(excel-database). Pada file excel-database tersebut
terdiri

dari beberapa sheet yang berisi data berupa excel

table. 

Seiring

dengan perkembangan penambahan data tiap hari, saya

berencana menge-set excel-database tersebut menjadi

multi-user dengan setting shared workbook tetapi saat
diset

sebagai shared workbook, program excel menginformasikan

bahwa tool shared workbook tidak bisa digunakan kalo

terdapat object excel table dalam workbook.

Pertanyaan / bahan

diskusi:1.  Apakah ada cara lain agar bisa

sharing workbook yang ada object excel table

nya?2. Jika nomer #1 tidak bisa, saya berencana

mengkonversi excel-database tersebut ke microsoft access

(*.accdb) , tetapi proses input dan output tetap di

excel.saya telah membuat vba code sederhana untuk

connect ke access

sbb:'========================= ====

========Option ExplicitConst

sProvider As String =

"Microsoft.ACE.OLEDB.12.0"Dim

sConnString As StringDim cnn As

ADODB.Connection

Private Function

CanConnectAccess(DbFile As String, rtnErr As String) As

Boolean        sConnString =

"Provider=" & sProvider &
";"

& _        "Data Source=" &

DbFile & ";" & _       

"Persist Security Info=False;" 

      'create a new connection to access

database    CanConnectAccess =

True    rtnErr = vbNullString 

      Set cnn = New

ADODB.Connection    On Error Resume

Next    cnn.Open sConnString    If

Err..Number Then        rtnErr =

Err.Description        CanConnectAccess =

False        Err.Clear    End

IfEnd

Function'===================== ========

=dari vba code di atas, bagian mana yang perlu

dirubah agar database access bisa untuk multi

user?

Terimkasih

banyak sebelumnya. Mohon maaf jika terlalu

panjang.

Wassalamu'alaikum wr

wb.-zainul







































































#yiv3560235441 #yiv3560235441 --

#yiv3560235441ygrp-mkp {

border:1px solid #d8d8d8;font-family:Arial; margin:10px

0;padding:0 10px;}



#yiv3560235441 #yiv3560235441ygrp-mkp hr {

border:1px solid #d8d8d8;}



#yiv3560235441 #yiv3560235441ygrp-mkp #yiv3560235441hd {

color:#628c2a;font-size:85%; font-weight:700;line-height:
122%;margin:10px

0;}



#yiv3560235441 #yiv3560235441ygrp-mkp #yiv3560235441ads
{

margin-bottom:10px;}



#yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad {

padding:0 0;}



#yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad p
{

margin:0;}



#yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad a
{

color:#0000ff;text-decoration: none;}

#yiv3560235441 #yiv3560235441ygrp-sponsor

#yiv3560235441ygrp-lc {

font-family:Arial;}



#yiv3560235441 #yiv3560235441ygrp-sponsor

#yiv3560235441ygrp-lc #yiv3560235441hd {

margin:10px

0px;font-weight:700;font-size: 78%;line-height:122%;}



#yiv3560235441 #yiv3560235441ygrp-sponsor

#yiv3560235441ygrp-lc .yiv3560235441ad {

margin-bottom:10px;padding:0 0;}



#yiv3560235441 #yiv3560235441actions {

font-family:Verdana;font-size: 11px;padding:10px 0;}



#yiv3560235441 #yiv3560235441activity {

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



#yiv3560235441 #yiv3560235441activity span {

font-weight:700;}



#yiv3560235441 #yiv3560235441activity span:first-child {

text-transform:uppercase;}



#yiv3560235441 #yiv3560235441activity span a {

color:#5085b6;text-decoration: none;}



#yiv3560235441 #yiv3560235441activity span span {

color:#ff7900;}



#yiv3560235441 #yiv3560235441activity span

.yiv3560235441underline {

text-decoration:underline;}



#yiv3560235441 .yiv3560235441attach {

clear:both;display:table;font- family:Arial;font-size:12px;
padding:10px

0;width:400px;}



#yiv3560235441 .yiv3560235441attach div a {

text-decoration:none;}



#yiv3560235441 .yiv3560235441attach img {

border:none;padding-right:5px; }



#yiv3560235441 .yiv3560235441attach label {

display:block;margin-bottom: 5px;}



#yiv3560235441 .yiv3560235441attach label a {

text-decoration:none;}



#yiv3560235441 blockquote {

margin:0 0 0 4px;}



#yiv3560235441 .yiv3560235441bold {

font-family:Arial;font-size: 13px;font-weight:700;}



#yiv3560235441 .yiv3560235441bold a {

text-decoration:none;}



#yiv3560235441 dd.yiv3560235441last p a {

font-family:Verdana;font- weight:700;}



#yiv3560235441 dd.yiv3560235441last p span {

margin-right:10px;font-family: Verdana;font-weight:700;}



#yiv3560235441 dd.yiv3560235441last p

span.yiv3560235441yshortcuts {

margin-right:0;}



#yiv3560235441 div.yiv3560235441attach-table div div a {

text-decoration:none;}



#yiv3560235441 div.yiv3560235441attach-table {

width:400px;}



#yiv3560235441 div.yiv3560235441file-title a,
#yiv3560235441

div.yiv3560235441file-title a:active, #yiv3560235441

div.yiv3560235441file-title a:hover, #yiv3560235441

div.yiv3560235441file-title a:visited {

text-decoration:none;}



#yiv3560235441 div.yiv3560235441photo-title a,

#yiv3560235441 div.yiv3560235441photo-title a:active,

#yiv3560235441 div.yiv3560235441photo-title a:hover,

#yiv3560235441 div.yiv3560235441photo-title a:visited {

text-decoration:none;}



#yiv3560235441 div#yiv3560235441ygrp-mlmsg

#yiv3560235441ygrp-msg p a span.yiv3560235441yshortcuts
{

font-family:Verdana;font-size: 10px;font-weight:normal;}



#yiv3560235441 .yiv3560235441green {

color:#628c2a;}



#yiv3560235441 .yiv3560235441MsoNormal {

margin:0 0 0 0;}



#yiv3560235441 o {

font-size:0;}



#yiv3560235441 #yiv3560235441photos div {

float:left;width:72px;}



#yiv3560235441 #yiv3560235441photos div div {

border:1px solid

#666666;min-height:62px; overflow:hidden;width:62px;}



#yiv3560235441 #yiv3560235441photos div label {

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



#yiv3560235441 #yiv3560235441reco-category {

font-size:77%;}



#yiv3560235441 #yiv3560235441reco-desc {

font-size:77%;}



#yiv3560235441 .yiv3560235441replbq {

margin:4px;}



#yiv3560235441 #yiv3560235441ygrp-actbar div a:first-child
{

margin-right:2px;padding- right:5px;}



#yiv3560235441 #yiv3560235441ygrp-mlmsg {

font-size:13px;font-family: Arial, helvetica, clean,

sans-serif;}



#yiv3560235441 #yiv3560235441ygrp-mlmsg table {

font-size:inherit;font:100%;}



#yiv3560235441 #yiv3560235441ygrp-mlmsg select,

#yiv3560235441 input, #yiv3560235441 textarea {

font:99% Arial, Helvetica, clean, sans-serif;}



#yiv3560235441 #yiv3560235441ygrp-mlmsg pre,
#yiv3560235441

code {

font:115% monospace;}



#yiv3560235441 #yiv3560235441ygrp-mlmsg * {

line-height:1.22em;}



#yiv3560235441 #yiv3560235441ygrp-mlmsg #yiv3560235441logo
{

padding-bottom:10px;}





#yiv3560235441 #yiv3560235441ygrp-msg p a {

font-family:Verdana;}



#yiv3560235441 #yiv3560235441ygrp-msg

p#yiv3560235441attach-count span {

color:#1E66AE;font-weight:700; }



#yiv3560235441 #yiv3560235441ygrp-reco

#yiv3560235441reco-head {

color:#ff7900;font-weight:700; }



#yiv3560235441 #yiv3560235441ygrp-reco {

margin-bottom:20px;padding: 0px;}



#yiv3560235441 #yiv3560235441ygrp-sponsor
#yiv3560235441ov

li a {

font-size:130%;text- decoration:none;}



#yiv3560235441 #yiv3560235441ygrp-sponsor
#yiv3560235441ov

li {

font-size:77%;list-style-type: square;padding:6px 0;}



#yiv3560235441 #yiv3560235441ygrp-sponsor
#yiv3560235441ov

ul {

margin:0;padding:0 0 0 8px;}



#yiv3560235441 #yiv3560235441ygrp-text {

font-family:Georgia;}



#yiv3560235441 #yiv3560235441ygrp-text p {

margin:0 0 1em 0;}



#yiv3560235441 #yiv3560235441ygrp-text tt {

font-size:120%;}



#yiv3560235441 #yiv3560235441ygrp-vital ul li:last-child
{

border-right:none !important;

}

#yiv3560235441



































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

#yiv1901667967 #yiv1901667967ygrp-mkp hr {
border:1px solid #d8d8d8;}

#yiv1901667967 #yiv1901667967ygrp-mkp #yiv1901667967hd {
color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
0;}

#yiv1901667967 #yiv1901667967ygrp-mkp #yiv1901667967ads {
margin-bottom:10px;}

#yiv1901667967 #yiv1901667967ygrp-mkp .yiv1901667967ad {
padding:0 0;}

#yiv1901667967 #yiv1901667967ygrp-mkp .yiv1901667967ad p {
margin:0;}

#yiv1901667967 #yiv1901667967ygrp-mkp .yiv1901667967ad a {
color:#0000ff;text-decoration:none;}
#yiv1901667967 #yiv1901667967ygrp-sponsor
#yiv1901667967ygrp-lc {
font-family:Arial;}

#yiv1901667967 #yiv1901667967ygrp-sponsor
#yiv1901667967ygrp-lc #yiv1901667967hd {
margin:10px
0px;font-weight:700;font-size:78%;line-height:122%;}

#yiv1901667967 #yiv1901667967ygrp-sponsor
#yiv1901667967ygrp-lc .yiv1901667967ad {
margin-bottom:10px;padding:0 0;}

#yiv1901667967 #yiv1901667967actions {
font-family:Verdana;font-size:11px;padding:10px 0;}

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

#yiv1901667967 #yiv1901667967activity span {
font-weight:700;}

#yiv1901667967 #yiv1901667967activity span:first-child {
text-transform:uppercase;}

#yiv1901667967 #yiv1901667967activity span a {
color:#5085b6;text-decoration:none;}

#yiv1901667967 #yiv1901667967activity span span {
color:#ff7900;}

#yiv1901667967 #yiv1901667967activity span
.yiv1901667967underline {
text-decoration:underline;}

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

#yiv1901667967 .yiv1901667967attach div a {
text-decoration:none;}

#yiv1901667967 .yiv1901667967attach img {
border:none;padding-right:5px;}

#yiv1901667967 .yiv1901667967attach label {
display:block;margin-bottom:5px;}

#yiv1901667967 .yiv1901667967attach label a {
text-decoration:none;}

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

#yiv1901667967 .yiv1901667967bold {
font-family:Arial;font-size:13px;font-weight:700;}

#yiv1901667967 .yiv1901667967bold a {
text-decoration:none;}

#yiv1901667967 dd.yiv1901667967last p a {
font-family:Verdana;font-weight:700;}

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

#yiv1901667967 dd.yiv1901667967last p
span.yiv1901667967yshortcuts {
margin-right:0;}

#yiv1901667967 div.yiv1901667967attach-table div div a {
text-decoration:none;}

#yiv1901667967 div.yiv1901667967attach-table {
width:400px;}

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

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

#yiv1901667967 div#yiv1901667967ygrp-mlmsg
#yiv1901667967ygrp-msg p a span.yiv1901667967yshortcuts {
font-family:Verdana;font-size:10px;font-weight:normal;}

#yiv1901667967 .yiv1901667967green {
color:#628c2a;}

#yiv1901667967 .yiv1901667967MsoNormal {
margin:0 0 0 0;}

#yiv1901667967 o {
font-size:0;}

#yiv1901667967 #yiv1901667967photos div {
float:left;width:72px;}

#yiv1901667967 #yiv1901667967photos div div {
border:1px solid
#666666;min-height:62px;overflow:hidden;width:62px;}

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

#yiv1901667967 #yiv1901667967reco-category {
font-size:77%;}

#yiv1901667967 #yiv1901667967reco-desc {
font-size:77%;}

#yiv1901667967 .yiv1901667967replbq {
margin:4px;}

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

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

#yiv1901667967 #yiv1901667967ygrp-mlmsg table {
font-size:inherit;font:100%;}

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

#yiv1901667967 #yiv1901667967ygrp-mlmsg pre, #yiv1901667967
code {
font:115% monospace;}

#yiv1901667967 #yiv1901667967ygrp-mlmsg * {
line-height:1.22em;}

#yiv1901667967 #yiv1901667967ygrp-mlmsg #yiv1901667967logo {
padding-bottom:10px;}


#yiv1901667967 #yiv1901667967ygrp-msg p a {
font-family:Verdana;}

#yiv1901667967 #yiv1901667967ygrp-msg
p#yiv1901667967attach-count span {
color:#1E66AE;font-weight:700;}

#yiv1901667967 #yiv1901667967ygrp-reco
#yiv1901667967reco-head {
color:#ff7900;font-weight:700;}

#yiv1901667967 #yiv1901667967ygrp-reco {
margin-bottom:20px;padding:0px;}

#yiv1901667967 #yiv1901667967ygrp-sponsor #yiv1901667967ov
li a {
font-size:130%;text-decoration:none;}

#yiv1901667967 #yiv1901667967ygrp-sponsor #yiv1901667967ov
li {
font-size:77%;list-style-type:square;padding:6px 0;}

#yiv1901667967 #yiv1901667967ygrp-sponsor #yiv1901667967ov
ul {
margin:0;padding:0 0 0 8px;}

#yiv1901667967 #yiv1901667967ygrp-text {
font-family:Georgia;}

#yiv1901667967 #yiv1901667967ygrp-text p {
margin:0 0 1em 0;}

#yiv1901667967 #yiv1901667967ygrp-text tt {
font-size:120%;}

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


Fri Dec 22, 2017 1:29 am (PST) . Posted by:

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

mas Zainul,

Best practice ketika menggunakan DBMS adalah berusaha menyerahkan kerja
sebanyak mungkin ke DBMS.
Pada penggunaan Access, saya kurang tahu pasti bagaimana cara mengirim
nilai ke object Query yang ada di dalam MS Access. Secara umum sih
sepertinya akan menggunakan query ber-parameter.
Jadi itu juga mirip dengan kalau query disusun di Excel (saya katakan di
Excel ya, bukan di VBA, Excel formula bisa membantu menyusunnya dan bisa
jadi lebih cepat daripada kerja string si VBA)

2017-12-22 16:17 GMT+07:00 Zainul Ulum zainul_ulum@yahoo.com
[belajar-excel] <belajar-excel@yahoogroups.com>:

>
>
> Terimakasih infonya mas Kid,
> jika tidak ada fasilitas stored procedure di access, berarti harus
> building query.
> Untuk query yang panjang, biasanya saya menggunakan bantuan vba di excel
> kemudian di execute query menggunakan function sbb:
> '=================
> Private Function CanOpenRecordSet(sSql As String, rsRtn As
> ADODB.Recordset, rtnErr As String) As Boolean
> Dim rs As New ADODB.Recordset
> CanOpenRecordSet = True
> On Error Resume Next
> 'Set rs = cnn.Execute(sSql)
> rs.Open sSql, cnn, adOpenKeyset, adLockReadOnly
> Set rsRtn = rs
> If Err.Number Or rsRtn.RecordCount < 0 Then
> CanOpenRecordSet = False
> rtnErr = Err.Description
> Err.Clear
> Exit Function
> End If
> End Function
> '===================================
>
> Lebih cepat atau ekfektif mana antara:
> 1. Running sql di vba seperti contoh di atas
> ataukah
> 2. Running di vba tapi sql sudah menjadi object query di access.
>
> Wassalam,
> -zainul
>
> #dikirim_pakai_mail.yahoo.com_tanpa_pulsa#
>
> --------------------------------------------
> On Fri, 22/12/17, 'Mr. Kid' mr.nmkid@gmail.com [belajar-excel] <
> belajar-excel@yahoogroups.com> wrote:
>
> Subject: Re: [belajar-excel] Share Workbook yang ada excel table-nya
> To: "BeExcel" <belajar-excel@yahoogroups.com>
> Date: Friday, 22 December, 2017, 4:01 PM
>
>
>
>
>
>
>
>
>
>
>
>
> Mas
> Zainul,
> Sepertinya kalau pakai
> Access, langsung Execute query saja.Saya tahunya,
> produk MS yang punya Stored Procedure adalah MS SQL
> Server.Metode dalam SP yang menggunakan Bulk
>
> Insert dari text file (supaya cepat untuk data yang banyak)
> membutuhkan sharing folder disisi server.Jadi,
> client (user) melakukan save text file ke komputer
> server.
>
> Wassalam,
> Kid
>
>
> 2017-12-22 15:53 GMT+07:00
> Zainul Ulum zainul_ulum@yahoo.com
> [belajar-excel] <belajar-excel@yahoogroups.com>:
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> Maturnuwun Mas Kid,
>
> Penjelasannya Padat dan jelas.
>
>
>
> Sepertinga saya akan menggunakan back end berupa access
> database (accdb) dengan stored procedure.
>
> belum mempertimbangkan ke MySQL atau yang lain karena IT
> admin tidak mengijinkan saya untuk install program baru
>
>
>
> Thanks,
>
> -zainul
>
>
>
> #dikirim_pakai_mail.yahoo.com_ tanpa_pulsa#
>
>
>
> ------------------------------ --------------
>
> On Wed, 20/12/17, 'Mr. Kid' mr.nmkid@gmail.com
> [belajar-excel] <belajar-excel@yahoogroups.com
> > wrote:
>
>
>
> Subject: Re: [belajar-excel] Share Workbook yang ada excel
> table-nya
>
> To: "BeExcel" <belajar-excel@yahoogroups.com
> >
>
> Date: Wednesday, 20 December, 2017, 10:57 PM
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> Wa'alaikumussalam
>
> wr wb
>
> mas Zainul,
>
>
>
> By design :
>
> Excel workbook ketika dibuka selalu
>
> berusaha untuk Exclusive (memberi hak write ke seorang
> user
>
> saja)
>
>
>
> Fitur shared workbook
>
> :Fitur ini berusaha untuk memberi hak
>
> Exclusive kepada lebih dari seorang user. Tetapi, fitur
> ini
>
> memberi batasan ketika ada lebih dari seorang user yang
> akan
>
> mengubah isi cells (sila lihat di menu Share Workbook
> tab
>
> Advanced bagian Conflicting blabla). Cells yang diubah
> bisa
>
> jadi masih kosong (blank cells) maupun sudah ada
>
> isinya.Artinya, shared workbook cukup beresiko
>
> untuk dimanfaatkan dalam proses penyimpanan data, karena
>
> diusahakan sebisa mungkin data yang disimpan dapat
> terjaga
>
> utuh. Sedangkan fitur ini memungkinkan terjadinya
> kondisi
>
> data yang benar (hasil input user A) akan terubah oleh
> data
>
> yang benar lainnya (hasil input user B), sehingga data
> akan
>
> kehilangan records yang benar.
>
> Aplikasi entri data
>
> :Pada umumnya, sistem data akan membentuk
>
> setidaknya 2 layer, yaitu : 1. Back end data; 2.
>
> Interface.Back end data bisa di text file, Excel
>
> file, database (direkomendasikan)
>
> Interface bisa berupa add in, xlsm
>
> atau xlsb file, desktop application lainnya, dan web
> base
>
> app (biasanya akan terbentuk 3 layer [three tier])
>
>
>
> Back end data dengan Text
>
> file dan Excel :Hak akses terhadap dua format
>
> file ini adalah Exclusive. Jadi, proses penulisan data
> ke
>
> back end harus dibuatkan sendiri
>
> antriannya.
>
> Back end data dengan database
>
> : (apapun database-nya, mulai dari MS Access, SQL
>
> Server, Oracle, MySQL, dsb yang berupa DBMS)Hak
>
> akses terhadap database adalah shared dengan management
>
> share write dan read yang sudah baik. Jadi tidak perlu
> repot
>
> membuatkan antrian proses penulisan data.
>
> Kasus Back End Data dengan Excel
>
> : (misal diatur)1. back end data dengan Excel
>
> bernama myData.xlsx (TIDAK shared workbook)
>
> 2. interface berupa add-in atau xlsm
>
> atau xlsb (direkomendasikan), TETAPI membuka back end
>
> myData.xlsx hanya sesuai keperluan saja, yaitu saat akan
>
> menulis data dan saat akan membaca data
>
> saja * Open - write - save - close atau
>
> Open - read - close :: jangan sampai menunggu respon
>
> dari user, apalagi user langsung entri atau edit di
>
> myData.xlsx
>
>
>
> Prosedur antrian penulisan data bisa
>
> sebagai berikut : 'deklarasi variabel
>
> proses
>
> dim wbkApp as
>
> workbook, rngInput as range, wbkDB as workbook, shtDT as
>
> worksheet
>
>
>
> 'init records di interface yang akan ditulis ke back
>
> end
>
> set wbkAPP =
>
> thisworkbook set
>
> rngInput=wbkapp.sheets("area input
>
> data").range("a2:c17")
>
>
>
> 'cek
>
> antrianCOBA_BUKA: set
>
> wbkdb=workbooks.open( wbkapp.path &
>
> "\myData.xlsx" ) if
>
> wbkdb.readonly then
>
> wbkdb.close false goto
>
> COBA_BUKA endif
>
> 'proses tulis [kalau
>
> sampai di baris ini, berarti back end data telah
> menyerahkan
>
> hak write secara exclusive kepada wbkApp melalui
>
> wbkDB set
>
> shtdt=wbkdb.sheets("DATA") 'misal
> nama
>
> sheet lokasi penulisan adalah 'DATA'
>
>
>
> rnginput.copy shtdt.cells(
>
> shtdt.rows.count , "A"
>
> ).end(xlup).offset(1). pastespecial xlpastevalues
>
>
> wbkdb.close true
>
> 'save n close wbkdb
>
>
>
> 'pesan selesai kepada
>
> user msgbox
>
> "Selesai.",vbinformation," Tulis ke
>
> xlDBFile"
>
>
>
> Catatan :
>
> Pada proses di atas, file
>
> myData.xlsx bisa berisi excel table, excel query table,
>
> excel pivot table, dan sebagainya. Tapi, penulisan data
>
> tetap di suatu range (jika range tepat dibawah Excel
> Table,
>
> maka Excel Table akan autoresize barisnya).
>
>
>
>
>
> Obrolan
>
> :Penggunaan database (dbms) sebagai back end
>
> sangat dianjurkan. Proses penulisan data bisa dengan
> banyak
>
> cara.
>
> Secara umum, urutan proses
>
> penulisan data adalah open connection - execute Insert
> atau
>
> Update query - Close connection
>
> Varian proses execute insert atau
>
> update query bisa jadi dengan set setiap nilai field
> lalu
>
> diakhir commit. Tapi saya kurang suka cara ini, terlalu
>
> banyak baris script-nya dan kurang cepat untuk penulisan
>
> records yang banyak sekaligus.
>
>
>
> Excel
>
> Table bisa dimanfaatkan untuk menyusun bunyi query
> insert
>
> atau update di sebuah kolom dalam Excel Table (kolom ini
>
> bisa di-hide). Lalu execute dilakukan dengan loop
> seluruh
>
> isi kolom tersebut.Untuk records yang sangat
>
> banyak, tentu hal ini akan memakan waktu dalam melakukan
>
> loop (BUKAN pada eksekusi query-nya).
>
> Data yang sangat banyak biasanya
>
> akan menggunakan DBMS yang besar, seperti SQL Server
> (edisi
>
> Express bisa 10GB tanpa trik, dan bisa dijadikan multi
>
> database jika data lebih dari 10GB).Dengan
>
> DBMS seperti SQL Server, akan ada lebih banyak opsi
> dalam
>
> penulisan data, mulai dari pass through query (saya
> kurang
>
> suka cara ini, karena terlalu lambat untuk ukuran kerja
>
> sebuah DBMS sekelas SQL Server), programming dengan
> Stored
>
> Precedure (SP), dan sebagainya.
>
>
>
> Input data di Excel, database
>
> di SQL Server, jumlah records cukup banyak (misal
> sekitar
>
> 200K records), dengan membuat SP di dalam database dan
> SP
>
> dieksekusi oleh Excel, maka proses penulisan data bisa
> cuma
>
> beberapa detik saja (relatif terhadap spesifikasi
> komputer
>
> ya). Sedangkan dengan loop execute query insert bisa
> sekitar
>
> 1 sampai 2 menit.
>
> Wassalamu'alaikum wr
>
> wbKid
>
>
>
>
>
> 2017-12-20 12:51 GMT+07:00
>
> zainul_ulum@yahoo.com
>
> [belajar-excel] <belajar-excel@yahoogroups.com
> >:
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> Dear Be-excel,Saya mulai thread dari
>
> jawaban Mas Kid mengenai shared workbook.
>
> Latar belakang:
>
> Saya membuat aplikasi vba excel
>
> dalam bentuk addin (extensi xlam) untuk otomatisasi
> sebuah
>
> file excel yang saya pakai sebagai database
>
> (excel-database). Pada file excel-database tersebut
> terdiri
>
> dari beberapa sheet yang berisi data berupa excel
>
> table.
>
> Seiring
>
> dengan perkembangan penambahan data tiap hari, saya
>
> berencana menge-set excel-database tersebut menjadi
>
> multi-user dengan setting shared workbook tetapi saat
> diset
>
> sebagai shared workbook, program excel menginformasikan
>
> bahwa tool shared workbook tidak bisa digunakan kalo
>
> terdapat object excel table dalam workbook.
>
> Pertanyaan / bahan
>
> diskusi:1. Apakah ada cara lain agar bisa
>
> sharing workbook yang ada object excel table
>
> nya?2. Jika nomer #1 tidak bisa, saya berencana
>
> mengkonversi excel-database tersebut ke microsoft access
>
> (*.accdb) , tetapi proses input dan output tetap di
>
> excel.saya telah membuat vba code sederhana untuk
>
> connect ke access
>
> sbb:'========================= ====
>
> ========Option ExplicitConst
>
> sProvider As String =
>
> "Microsoft.ACE.OLEDB.12.0"Dim
>
> sConnString As StringDim cnn As
>
> ADODB.Connection
>
> Private Function
>
> CanConnectAccess(DbFile As String, rtnErr As String) As
>
> Boolean sConnString =
>
> "Provider=" & sProvider &
> ";"
>
> & _ "Data Source=" &
>
> DbFile & ";" & _
>
> "Persist Security Info=False;"
>
> 'create a new connection to access
>
> database CanConnectAccess =
>
> True rtnErr = vbNullString
>
> Set cnn = New
>
> ADODB.Connection On Error Resume
>
> Next cnn.Open sConnString If
>
> Err..Number Then rtnErr =
>
> Err.Description CanConnectAccess =
>
> False Err.Clear End
>
> IfEnd
>
> Function'===================== ========
>
> =dari vba code di atas, bagian mana yang perlu
>
> dirubah agar database access bisa untuk multi
>
> user?
>
> Terimkasih
>
> banyak sebelumnya. Mohon maaf jika terlalu
>
> panjang.
>
> Wassalamu'alaikum wr
>
> wb.-zainul
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> #yiv3560235441 #yiv3560235441 --
>
> #yiv3560235441ygrp-mkp {
>
> border:1px solid #d8d8d8;font-family:Arial; margin:10px
>
> 0;padding:0 10px;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mkp hr {
>
> border:1px solid #d8d8d8;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mkp #yiv3560235441hd {
>
> color:#628c2a;font-size:85%; font-weight:700;line-height:
> 122%;margin:10px
>
> 0;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mkp #yiv3560235441ads
> {
>
> margin-bottom:10px;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad {
>
> padding:0 0;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad p
> {
>
> margin:0;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mkp .yiv3560235441ad a
> {
>
> color:#0000ff;text-decoration: none;}
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor
>
> #yiv3560235441ygrp-lc {
>
> font-family:Arial;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor
>
> #yiv3560235441ygrp-lc #yiv3560235441hd {
>
> margin:10px
>
> 0px;font-weight:700;font-size: 78%;line-height:122%;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor
>
> #yiv3560235441ygrp-lc .yiv3560235441ad {
>
> margin-bottom:10px;padding:0 0;}
>
>
>
> #yiv3560235441 #yiv3560235441actions {
>
> font-family:Verdana;font-size: 11px;padding:10px 0;}
>
>
>
> #yiv3560235441 #yiv3560235441activity {
>
> background-color:#e0ecee; float:left;font-family:
> Verdana;font-size:10px; padding:10px;}
>
>
>
> #yiv3560235441 #yiv3560235441activity span {
>
> font-weight:700;}
>
>
>
> #yiv3560235441 #yiv3560235441activity span:first-child {
>
> text-transform:uppercase;}
>
>
>
> #yiv3560235441 #yiv3560235441activity span a {
>
> color:#5085b6;text-decoration: none;}
>
>
>
> #yiv3560235441 #yiv3560235441activity span span {
>
> color:#ff7900;}
>
>
>
> #yiv3560235441 #yiv3560235441activity span
>
> .yiv3560235441underline {
>
> text-decoration:underline;}
>
>
>
> #yiv3560235441 .yiv3560235441attach {
>
> clear:both;display:table;font- family:Arial;font-size:12px;
> padding:10px
>
> 0;width:400px;}
>
>
>
> #yiv3560235441 .yiv3560235441attach div a {
>
> text-decoration:none;}
>
>
>
> #yiv3560235441 .yiv3560235441attach img {
>
> border:none;padding-right:5px; }
>
>
>
> #yiv3560235441 .yiv3560235441attach label {
>
> display:block;margin-bottom: 5px;}
>
>
>
> #yiv3560235441 .yiv3560235441attach label a {
>
> text-decoration:none;}
>
>
>
> #yiv3560235441 blockquote {
>
> margin:0 0 0 4px;}
>
>
>
> #yiv3560235441 .yiv3560235441bold {
>
> font-family:Arial;font-size: 13px;font-weight:700;}
>
>
>
> #yiv3560235441 .yiv3560235441bold a {
>
> text-decoration:none;}
>
>
>
> #yiv3560235441 dd.yiv3560235441last p a {
>
> font-family:Verdana;font- weight:700;}
>
>
>
>
> #yiv3560235441 dd.yiv3560235441last p span {
>
> margin-right:10px;font-family: Verdana;font-weight:700;}
>
>
>
> #yiv3560235441 dd.yiv3560235441last p
>
> span.yiv3560235441yshortcuts {
>
> margin-right:0;}
>
>
>
> #yiv3560235441 div.yiv3560235441attach-table div div a {
>
> text-decoration:none;}
>
>
>
> #yiv3560235441 div.yiv3560235441attach-table {
>
> width:400px;}
>
>
>
> #yiv3560235441 div.yiv3560235441file-title a,
> #yiv3560235441
>
> div.yiv3560235441file-title a:active, #yiv3560235441
>
> div.yiv3560235441file-title a:hover, #yiv3560235441
>
> div.yiv3560235441file-title a:visited {
>
> text-decoration:none;}
>
>
>
> #yiv3560235441 div.yiv3560235441photo-title a,
>
> #yiv3560235441 div.yiv3560235441photo-title a:active,
>
> #yiv3560235441 div.yiv3560235441photo-title a:hover,
>
> #yiv3560235441 div.yiv3560235441photo-title a:visited {
>
> text-decoration:none;}
>
>
>
> #yiv3560235441 div#yiv3560235441ygrp-mlmsg
>
> #yiv3560235441ygrp-msg p a span.yiv3560235441yshortcuts
> {
>
> font-family:Verdana;font-size: 10px;font-weight:normal;}
>
>
>
> #yiv3560235441 .yiv3560235441green {
>
> color:#628c2a;}
>
>
>
> #yiv3560235441 .yiv3560235441MsoNormal {
>
> margin:0 0 0 0;}
>
>
>
> #yiv3560235441 o {
>
> font-size:0;}
>
>
>
> #yiv3560235441 #yiv3560235441photos div {
>
> float:left;width:72px;}
>
>
>
> #yiv3560235441 #yiv3560235441photos div div {
>
> border:1px solid
>
> #666666;min-height:62px; overflow:hidden;width:62px;}
>
>
>
> #yiv3560235441 #yiv3560235441photos div label {
>
> color:#666666;font-size:10px; overflow:hidden;text-align:
> center;white-space:nowrap; width:64px;}
>
>
>
> #yiv3560235441 #yiv3560235441reco-category {
>
> font-size:77%;}
>
>
>
> #yiv3560235441 #yiv3560235441reco-desc {
>
> font-size:77%;}
>
>
>
> #yiv3560235441 .yiv3560235441replbq {
>
> margin:4px;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-actbar div a:first-child
> {
>
> margin-right:2px;padding- right:5px;}
>
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg {
>
> font-size:13px;font-family: Arial, helvetica, clean,
>
> sans-serif;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg table {
>
> font-size:inherit;font:100%;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg select,
>
> #yiv3560235441 input, #yiv3560235441 textarea {
>
> font:99% Arial, Helvetica, clean, sans-serif;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg pre,
> #yiv3560235441
>
> code {
>
> font:115% monospace;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg * {
>
> line-height:1.22em;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-mlmsg #yiv3560235441logo
> {
>
> padding-bottom:10px;}
>
>
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-msg p a {
>
> font-family:Verdana;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-msg
>
> p#yiv3560235441attach-count span {
>
> color:#1E66AE;font-weight:700; }
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-reco
>
> #yiv3560235441reco-head {
>
> color:#ff7900;font-weight:700; }
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-reco {
>
> margin-bottom:20px;padding: 0px;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor
> #yiv3560235441ov
>
> li a {
>
> font-size:130%;text- decoration:none;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor
> #yiv3560235441ov
>
> li {
>
> font-size:77%;list-style-type: square;padding:6px 0;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-sponsor
> #yiv3560235441ov
>
> ul {
>
> margin:0;padding:0 0 0 8px;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-text {
>
> font-family:Georgia;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-text p {
>
> margin:0 0 1em 0;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-text tt {
>
> font-size:120%;}
>
>
>
> #yiv3560235441 #yiv3560235441ygrp-vital ul li:last-child
> {
>
> border-right:none !important;
>
> }
>
> #yiv3560235441
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> #yiv1901667967 #yiv1901667967 --
> #yiv1901667967ygrp-mkp {
> border:1px solid #d8d8d8;font-family:Arial;margin:10px
> 0;padding:0 10px;}
>
> #yiv1901667967 #yiv1901667967ygrp-mkp hr {
> border:1px solid #d8d8d8;}
>
> #yiv1901667967 #yiv1901667967ygrp-mkp #yiv1901667967hd {
> color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
> 0;}
>
> #yiv1901667967 #yiv1901667967ygrp-mkp #yiv1901667967ads {
> margin-bottom:10px;}
>
> #yiv1901667967 #yiv1901667967ygrp-mkp .yiv1901667967ad {
> padding:0 0;}
>
> #yiv1901667967 #yiv1901667967ygrp-mkp .yiv1901667967ad p {
> margin:0;}
>
> #yiv1901667967 #yiv1901667967ygrp-mkp .yiv1901667967ad a {
> color:#0000ff;text-decoration:none;}
> #yiv1901667967 #yiv1901667967ygrp-sponsor
> #yiv1901667967ygrp-lc {
> font-family:Arial;}
>
> #yiv1901667967 #yiv1901667967ygrp-sponsor
> #yiv1901667967ygrp-lc #yiv1901667967hd {
> margin:10px
> 0px;font-weight:700;font-size:78%;line-height:122%;}
>
> #yiv1901667967 #yiv1901667967ygrp-sponsor
> #yiv1901667967ygrp-lc .yiv1901667967ad {
> margin-bottom:10px;padding:0 0;}
>
> #yiv1901667967 #yiv1901667967actions {
> font-family:Verdana;font-size:11px;padding:10px 0;}
>
> #yiv1901667967 #yiv1901667967activity {
> background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;
> padding:10px;}
>
> #yiv1901667967 #yiv1901667967activity span {
> font-weight:700;}
>
> #yiv1901667967 #yiv1901667967activity span:first-child {
> text-transform:uppercase;}
>
> #yiv1901667967 #yiv1901667967activity span a {
> color:#5085b6;text-decoration:none;}
>
> #yiv1901667967 #yiv1901667967activity span span {
> color:#ff7900;}
>
> #yiv1901667967 #yiv1901667967activity span
> .yiv1901667967underline {
> text-decoration:underline;}
>
> #yiv1901667967 .yiv1901667967attach {
> clear:both;display:table;font-family:Arial;font-size:12px;padding:10px
> 0;width:400px;}
>
> #yiv1901667967 .yiv1901667967attach div a {
> text-decoration:none;}
>
> #yiv1901667967 .yiv1901667967attach img {
> border:none;padding-right:5px;}
>
> #yiv1901667967 .yiv1901667967attach label {
> display:block;margin-bottom:5px;}
>
> #yiv1901667967 .yiv1901667967attach label a {
> text-decoration:none;}
>
> #yiv1901667967 blockquote {
> margin:0 0 0 4px;}
>
> #yiv1901667967 .yiv1901667967bold {
> font-family:Arial;font-size:13px;font-weight:700;}
>
> #yiv1901667967 .yiv1901667967bold a {
> text-decoration:none;}
>
> #yiv1901667967 dd.yiv1901667967last p a {
> font-family:Verdana;font-weight:700;}
>
> #yiv1901667967 dd.yiv1901667967last p span {
> margin-right:10px;font-family:Verdana;font-weight:700;}
>
> #yiv1901667967 dd.yiv1901667967last p
> span.yiv1901667967yshortcuts {
> margin-right:0;}
>
> #yiv1901667967 div.yiv1901667967attach-table div div a {
> text-decoration:none;}
>
> #yiv1901667967 div.yiv1901667967attach-table {
> width:400px;}
>
> #yiv1901667967 div.yiv1901667967file-title a, #yiv1901667967
> div.yiv1901667967file-title a:active, #yiv1901667967
> div.yiv1901667967file-title a:hover, #yiv1901667967
> div.yiv1901667967file-title a:visited {
> text-decoration:none;}
>
> #yiv1901667967 div.yiv1901667967photo-title a,
> #yiv1901667967 div.yiv1901667967photo-title a:active,
> #yiv1901667967 div.yiv1901667967photo-title a:hover,
> #yiv1901667967 div.yiv1901667967photo-title a:visited {
> text-decoration:none;}
>
> #yiv1901667967 div#yiv1901667967ygrp-mlmsg
> #yiv1901667967ygrp-msg p a span.yiv1901667967yshortcuts {
> font-family:Verdana;font-size:10px;font-weight:normal;}
>
> #yiv1901667967 .yiv1901667967green {
> color:#628c2a;}
>
> #yiv1901667967 .yiv1901667967MsoNormal {
> margin:0 0 0 0;}
>
> #yiv1901667967 o {
> font-size:0;}
>
> #yiv1901667967 #yiv1901667967photos div {
> float:left;width:72px;}
>
> #yiv1901667967 #yiv1901667967photos div div {
> border:1px solid
> #666666;min-height:62px;overflow:hidden;width:62px;}
>
> #yiv1901667967 #yiv1901667967photos div label {
> color:#666666;font-size:10px;overflow:hidden;text-align:
> center;white-space:nowrap;width:64px;}
>
> #yiv1901667967 #yiv1901667967reco-category {
> font-size:77%;}
>
> #yiv1901667967 #yiv1901667967reco-desc {
> font-size:77%;}
>
> #yiv1901667967 .yiv1901667967replbq {
> margin:4px;}
>
> #yiv1901667967 #yiv1901667967ygrp-actbar div a:first-child {
> margin-right:2px;padding-right:5px;}
>
> #yiv1901667967 #yiv1901667967ygrp-mlmsg {
> font-size:13px;font-family:Arial, helvetica, clean,
> sans-serif;}
>
> #yiv1901667967 #yiv1901667967ygrp-mlmsg table {
> font-size:inherit;font:100%;}
>
> #yiv1901667967 #yiv1901667967ygrp-mlmsg select,
> #yiv1901667967 input, #yiv1901667967 textarea {
> font:99% Arial, Helvetica, clean, sans-serif;}
>
> #yiv1901667967 #yiv1901667967ygrp-mlmsg pre, #yiv1901667967
> code {
> font:115% monospace;}
>
> #yiv1901667967 #yiv1901667967ygrp-mlmsg * {
> line-height:1.22em;}
>
> #yiv1901667967 #yiv1901667967ygrp-mlmsg #yiv1901667967logo {
> padding-bottom:10px;}
>
>
> #yiv1901667967 #yiv1901667967ygrp-msg p a {
> font-family:Verdana;}
>
> #yiv1901667967 #yiv1901667967ygrp-msg
> p#yiv1901667967attach-count span {
> color:#1E66AE;font-weight:700;}
>
> #yiv1901667967 #yiv1901667967ygrp-reco
> #yiv1901667967reco-head {
> color:#ff7900;font-weight:700;}
>
> #yiv1901667967 #yiv1901667967ygrp-reco {
> margin-bottom:20px;padding:0px;}
>
> #yiv1901667967 #yiv1901667967ygrp-sponsor #yiv1901667967ov
> li a {
> font-size:130%;text-decoration:none;}
>
> #yiv1901667967 #yiv1901667967ygrp-sponsor #yiv1901667967ov
> li {
> font-size:77%;list-style-type:square;padding:6px 0;}
>
> #yiv1901667967 #yiv1901667967ygrp-sponsor #yiv1901667967ov
> ul {
> margin:0;padding:0 0 0 8px;}
>
> #yiv1901667967 #yiv1901667967ygrp-text {
> font-family:Georgia;}
>
> #yiv1901667967 #yiv1901667967ygrp-text p {
> margin:0 0 1em 0;}
>
> #yiv1901667967 #yiv1901667967ygrp-text tt {
> font-size:120%;}
>
> #yiv1901667967 #yiv1901667967ygrp-vital ul li:last-child {
> border-right:none !important;
> }
> #yiv1901667967
>
>
>

Fri Dec 22, 2017 1:22 am (PST) . Posted by:

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

owh... Refresh All yang dengan CTRL + ALT + F5 itu cukup mengganggu ya.
hmmm...

Pakai formula juga bisa...
File terlampir.
PERINGATAN !!!
*Setiap kali mengubah data*, lakukan hal berikut :
1. Pastikan tabel kiri (definition) selalu memiliki 1 baris kosong di
record terakhir.
Tambah item sesuai kebutuhan output dan copy formula sampai tersedia 1
baris kosong dibawah paling bawah.
JANGAN menyediakan terlalu banyak baris kosong diakhir tabel, karena
akan memberatkan kerja kalkulasi Excel, sehingga akan membuat Excel
terkesan lemot.
2. Pastikan tabel kanan (output) selalu sampai menampilkan baris jumlah.
Copy baris formula sampai muncul Jumlah bila perlu,
tetapi jangan terlalu banyak meng-copy baris formula ke baris yang
belum tentu ada data yang ditampilkan karena akan memberatkan proses
kalkulasi.
Hal ini disebabkan karena ada array formula dalam tabel output yang
akan menguras kerja Excel sehingga cepat terasa lambat.
3. Pastikan sumber data adalah unique record berdasar kolom [Kode Rekening]
dan [TeksUraian] (BUKAN kolom [Uraian])

;)
Ternyata pakai formula itu otomatis terkalkulasi, tetapi yang perlu
dilakukan setiap kali mengubah data malah lebih banyak dan resiko Excel
me-lemot sangat besar...
Padahal user Excel kebanyakan belum terbiasa dengan SOP yang membutuhkan
kedisiplinan tinggi.

imho,
CTRL + ALT + F5 lebih teruji aman untuk dijadikan SOP. Setidaknya dari
sekian banyak file kerja yang pernah dibuat untuk berbagai karakteristik
user.

Regards,
Kid

2017-12-21 9:14 GMT+07:00 bos.kbrn@yahoo.com [belajar-excel] <
belajar-excel@yahoogroups.com>:

>
>
> Nggih matur nuwun Mr.Kid, dipahami namun ada yg mengganjal kalau memakai
> pivot, tdk bisa refresh otomatis jika ada data baru yg diinput atau sama
> kode rekeningnya? Mtr nwn Mr.Kid
>
> Pada tanggal 21 Des 2017 2.31 AM, "'Mr. Kid' mr.nmkid@gmail.com
> [belajar-excel]" <belajar-excel@yahoogroups.com> menulis:
>
>
>
> Kenapa tidak boleh ?
> Sudah beli Office mahal kok gak dipakai.
>
> Kalau mau pakai formula, buat di lokasi peletakan formula, lalu rujuk si
> formula ke cells yang ada di pivot table per kolomnya.
> Jadi, pivot table nya sebagai proses antara saja.
>
> Kalau mau copy paste value (pakai goto special visible) malah lebih cepet
> dibanding pakai formula.
>
> Regards,
> Kid
>
>
>
>
>
>
> On Thu, Dec 21, 2017 at 1:38 AM, Bos Kbrn bos.kbrn@yahoo.com
> [belajar-excel] <belajar-excel@yahoogroups.com> wrote:
>
>
>
> matur nuwun Mr.Kid atas pencerahannya, namun permasalahan di tempat saya
> tidak diperbolehkan memakai pivot, jika dipakai rumus apakah harus memakai
> array untuk mengurutkan per levelnya, mohon maaf Mr.Kid, matur nuwun.
>
>
> Pada Kamis, 21 Desember 2017 0:28, "'Mr. Kid' mr.nmkid@gmail.com
> [belajar-excel]" <belajar-excel@yahoogroups.com> menulis:
>
>
>
> Hai Kbrn,
>
> Dengan menyusun tabel referensi hirarki berorientasi horisontal, maka
> fitur Excel Pivot Table bisa dimanfaatkan untuk membentuk layout isi
> output. Perangkat layout selain isi bisa diatur kemudian.
> File terlampir.
>
> Regards,
> Kid
>
>
>
>
> 2017-12-20 22:29 GMT+07:00 Bos Kbrn bos.kbrn@yahoo.com
> <bos..kbrn@yahoo.com> [belajar-excel] <belajar-excel@yahoogroups.com>:
>
>
> Selamat malam master belajar excel, mohon ijin bertanya, bagaimana cara
> menampilkan deskripsi uraian belanja dibawah kode rekening sesuai dengan
> urutan kode di sheet Kode Rekening yang ditambilkan di sheet RKA? Contoh
> hasil yang diharapkan ada di sheet yg diharapkan, mohon maaf bila bertanya
> dengan teme sejenis yang telah dijelaskan namun saya benar2 tidak tahu,
> terima kasih atas bantuannya.
>
>
>
>
>
>
>
>
============================================================
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