[belajar-excel] Kirim data ke excel lain menggunakan VBA

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

[belajar-excel] Kirim data ke excel lain menggunakan VBA

Stephen Saputro
Selamat sore semuanya,

Mohon kiranya dapat di bantu kasus saya ini. Saya  membuat sebuah database
sederhana, di mana ada satu workbook yang saya gunakan sebagai Table
master. dan satu lagi worbook excel yang saya gunakan untuk mengirimkan
data ke table master dengan menggunakan VBA.

Permasalahan nya adalah script yang saya pakai di bawah ini, terkadang
mengirimkan data dengan baik ke data row paling akhir dari sebuah table
master, tapi terkadang data tersebut malah menimpa data lain yang sudah ada
dengan row yang berbeda ( data yang masuk ke kolom2 nya sudah tepat hanya
saja row nya yang berbeda, seharus nya adalah konsisten di row data sesudah
row terakhir )

Script nya adalah sbb :

Private Sub Kirimdata_Click()

If TextBox1.Value = "" Or TextBox4.Value = "" Then
    If MsgBox("Form is not complete. Please fill the data No and the amount
!", vbQuestion + vbYesNo) <> yes Then
    Exit Sub
    End If
End If


Dim rc As Long
Dim path As String
Dim wb As Workbook

Application.ScreenUpdating = False
path = "\\blabla\blabla\blabla\master.xlsm"
rc = ActiveSheet.UsedRange.Rows.Count

Workbooks.Open " \\blabla\blabla\blabla\master.xlsm "
Set wb = ActiveWorkbook
rc = ActiveSheet.UsedRange.Rows.Count

With Sheets(1).Range("A1")
...Offset(rc, 0).Value = Me.ListBox1.Value
...Offset(rc, 1).Value = Me.ListBox2.Value
...Offset(rc, 2).Value = Me.ListBox3.Value
...Offset(rc, 3).Value = Me.ListBox4.Value
...Offset(rc, 4).Value = Me.ListBox5.Value
...Offset(rc, 5).Value = Me.TextBox1.Value
...Offset(rc, 6).Value = Me.TextBox2.Value
...Offset(rc, 7).Value = Me.TextBox3.Value
...Offset(rc, 8).Value = Me.ListBox6.Value
...Offset(rc, 9).Value = Me.TextBox5.Value
...Offset(rc, 10).Value = Me.TextBox4.Value
...Offset(rc, 11).Value = Me.TextBox7.Value
...Offset(rc, 12).Value = Me.TextBox8.Value
...Offset(rc, 13).Value = Me.ListBox7.Value
...Offset(rc, 14).Value = Me.TextBox6.Value

End With

wb.Save
wb.Close
Application.ScreenUpdating = True
Unload Me
Inputdata.Show
End Sub

Terima kasih sekali lagi untuk bantuan nya
Reply | Threaded
Open this post in threaded view
|

Re: [belajar-excel] Kirim data ke excel lain menggunakan VBA

hendrik karnadi
 Hai Stephen,
Coba code ini...rc = Range("A" & Rows.Count).End(xlUp).Row
untuk mencari baris terakhir pada kolom A.

Salam,HK

    Pada Senin, 5 Agustus 2019 16.47.29 GMT+7, Stephen Saputro [hidden email] [belajar-excel] <[hidden email]> menulis:  
 
    

Selamat sore semuanya,
Mohon kiranya dapat di bantu kasus saya ini. Saya  membuat sebuah database sederhana, di mana ada satu workbook yang saya gunakan sebagai Table master. dan satu lagi worbook excel yang saya gunakan untuk mengirimkan data ke table master dengan menggunakan VBA.
Permasalahan nya adalah script yang saya pakai di bawah ini, terkadang mengirimkan data dengan baik ke data row paling akhir dari sebuah table master, tapi terkadang data tersebut malah menimpa data lain yang sudah ada dengan row yang berbeda ( data yang masuk ke kolom2 nya sudah tepat hanya saja row nya yang berbeda, seharus nya adalah konsisten di row data sesudah row terakhir )
Script nya adalah sbb :
Private Sub Kirimdata_Click()

If TextBox1.Value = "" Or TextBox4..Value = "" Then
    If MsgBox("Form is not complete.. Please fill the data No and the amount !", vbQuestion + vbYesNo) <> yes Then
    Exit Sub
    End If
End If


Dim rc As Long
Dim path As String
Dim wb As Workbook

Application.ScreenUpdating = False
path = "\\blabla\blabla\blabla\master.xlsm"
rc = ActiveSheet.UsedRange.Rows.Count

Workbooks.Open "\\blabla\blabla\blabla\master.xlsm "
Set wb = ActiveWorkbook
rc = ActiveSheet.UsedRange.Rows.Count

With Sheets(1).Range("A1")
..Offset(rc, 0).Value = Me.ListBox1.Value 
..Offset(rc, 1).Value = Me.ListBox2.Value
..Offset(rc, 2).Value = Me.ListBox3..Value
..Offset(rc, 3).Value = Me.ListBox4.Value
..Offset(rc, 4).Value = Me.ListBox5.Value
..Offset(rc, 5).Value = Me..TextBox1.Value
..Offset(rc, 6).Value = Me.TextBox2.Value
..Offset(rc, 7).Value = Me.TextBox3.Value
..Offset(rc, 8).Value = Me.ListBox6.Value
..Offset(rc, 9).Value = Me.TextBox5.Value
..Offset(rc, 10).Value = Me.TextBox4.Value
..Offset(rc, 11).Value = Me.TextBox7.Value
..Offset(rc, 12).Value = Me.TextBox8.Value
..Offset(rc, 13).Value = Me.ListBox7.Value
..Offset(rc, 14).Value = Me.TextBox6.Value
End With

wb.Save
wb.Close 
Application.ScreenUpdating = True
Unload Me
Inputdata.Show
End Sub

Terima kasih sekali lagi untuk bantuan nya
   
Reply | Threaded
Open this post in threaded view
|

RE: [belajar-excel] Kirim data ke excel lain menggunakan VBA

Zainul Ulum
In reply to this post by Stephen Saputro
Stephen,

Coba ganti di nilai di variable rc memnjadi :

rc= Sheets(1).Range("A10000").end(xlup).row  ’asumsi maksimal baris/record=10000

Thanks,
-zainul


Sent from Mail for Windows 10

From: Stephen Saputro [hidden email] [belajar-excel]
Sent: Monday, August 5, 2019 4:47 PM
To: [hidden email]
Subject: [belajar-excel] Kirim data ke excel lain menggunakan VBA

 
Selamat sore semuanya,

Mohon kiranya dapat di bantu kasus saya ini. Saya  membuat sebuah database sederhana, di mana ada satu workbook yang saya gunakan sebagai Table master. dan satu lagi worbook excel yang saya gunakan untuk mengirimkan data ke table master dengan menggunakan VBA.

Permasalahan nya adalah script yang saya pakai di bawah ini, terkadang mengirimkan data dengan baik ke data row paling akhir dari sebuah table master, tapi terkadang data tersebut malah menimpa data lain yang sudah ada dengan row yang berbeda ( data yang masuk ke kolom2 nya sudah tepat hanya saja row nya yang berbeda, seharus nya adalah konsisten di row data sesudah row terakhir )

Script nya adalah sbb :

Private Sub Kirimdata_Click()

If TextBox1.Value = "" Or TextBox4..Value = "" Then
    If MsgBox("Form is not complete.. Please fill the data No and the amount !", vbQuestion + vbYesNo) <> yes Then
    Exit Sub
    End If
End If


Dim rc As Long
Dim path As String
Dim wb As Workbook

Application.ScreenUpdating = False
path = "\\blabla\blabla\blabla\master.xlsm"
rc = ActiveSheet.UsedRange.Rows.Count

Workbooks.Open " \\blabla\blabla\blabla\master.xlsm "
Set wb = ActiveWorkbook
rc = ActiveSheet.UsedRange.Rows.Count

With Sheets(1).Range("A1")
..Offset(rc, 0).Value = Me.ListBox1.Value 
..Offset(rc, 1).Value = Me.ListBox2.Value
..Offset(rc, 2).Value = Me.ListBox3..Value
..Offset(rc, 3).Value = Me.ListBox4.Value
..Offset(rc, 4).Value = Me.ListBox5.Value
..Offset(rc, 5).Value = Me..TextBox1.Value
..Offset(rc, 6).Value = Me.TextBox2.Value
..Offset(rc, 7).Value = Me.TextBox3.Value
..Offset(rc, 8).Value = Me.ListBox6.Value
..Offset(rc, 9).Value = Me.TextBox5.Value
..Offset(rc, 10).Value = Me.TextBox4.Value
..Offset(rc, 11).Value = Me.TextBox7.Value
..Offset(rc, 12).Value = Me.TextBox8.Value
..Offset(rc, 13).Value = Me.ListBox7.Value
..Offset(rc, 14).Value = Me.TextBox6.Value

End With

wb.Save
wb.Close 
Application.ScreenUpdating = True
Unload Me
Inputdata.Show
End Sub

Terima kasih sekali lagi untuk bantuan nya




132D2B47373544B882A36E41A07EE020.png (194 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [belajar-excel] Kirim data ke excel lain menggunakan VBA

Stephen Saputro
In reply to this post by Stephen Saputro
Pak Hendrik dan Pak Zainul,

Terima kasih banyak untuk bantuannya, Sudah Solved.



On Mon, Aug 5, 2019 at 11:48 PM Zainul Ulum [hidden email]
[belajar-excel] <[hidden email]> wrote:

>
>
> Stephen,
>
>
>
> Coba ganti di nilai di variable rc memnjadi :
>
>
>
> rc= Sheets(1).Range("A10000").end(xlup).row  ’asumsi maksimal
> baris/record=10000
>
>
>
> Thanks,
>
> -zainul
>
>
>
>
>
> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for
> Windows 10
>
>
>
> *From: *Stephen Saputro [hidden email] [belajar-excel]
> <[hidden email]>
> *Sent: *Monday, August 5, 2019 4:47 PM
> *To: *[hidden email]
> *Subject: *[belajar-excel] Kirim data ke excel lain menggunakan VBA
>
>
>
>
>
> Selamat sore semuanya,
>
>
>
> Mohon kiranya dapat di bantu kasus saya ini. Saya  membuat sebuah database
> sederhana, di mana ada satu workbook yang saya gunakan sebagai Table
> master. dan satu lagi worbook excel yang saya gunakan untuk mengirimkan
> data ke table master dengan menggunakan VBA.
>
>
>
> Permasalahan nya adalah script yang saya pakai di bawah ini, terkadang
> mengirimkan data dengan baik ke data row paling akhir dari sebuah table
> master, tapi terkadang data tersebut malah menimpa data lain yang sudah ada
> dengan row yang berbeda ( data yang masuk ke kolom2 nya sudah tepat hanya
> saja row nya yang berbeda, seharus nya adalah konsisten di row data sesudah
> row terakhir )
>
>
>
> Script nya adalah sbb :
>
>
>
> Private Sub Kirimdata_Click()
>
> If TextBox1.Value = "" Or TextBox4..Value = "" Then
>     If MsgBox("Form is not complete.. Please fill the data No and the
> amount !", vbQuestion + vbYesNo) <> yes Then
>     Exit Sub
>     End If
> End If
>
>
> Dim rc As Long
> Dim path As String
> Dim wb As Workbook
>
> Application.ScreenUpdating = False
> path = "\\blabla\blabla\blabla\master.xlsm"
> rc = ActiveSheet.UsedRange.Rows.Count
>
> Workbooks.Open " \\blabla\blabla\blabla\master.xlsm "
> Set wb = ActiveWorkbook
> rc = ActiveSheet.UsedRange.Rows.Count
>
> With Sheets(1).Range("A1")
> .Offset(rc, 0).Value = Me.ListBox1.Value
> .Offset(rc, 1).Value = Me.ListBox2.Value
> .Offset(rc, 2)..Value = Me.ListBox3..Value
> .Offset(rc, 3).Value = Me.ListBox4.Value
> .Offset(rc, 4).Value = Me.ListBox5.Value
> .Offset(rc, 5).Value = Me..TextBox1.Value
> .Offset(rc, 6).Value = Me.TextBox2.Value
> .Offset(rc, 7).Value = Me.TextBox3.Value
> .Offset(rc, 8).Value = Me.ListBox6..Value
> .Offset(rc, 9).Value = Me.TextBox5.Value
> .Offset(rc, 10).Value = Me.TextBox4.Value
> .Offset(rc, 11)...Value = Me.TextBox7.Value
> ..Offset(rc, 12).Value = Me.TextBox8.Value
> .Offset(rc, 13).Value = Me..ListBox7.Value
> .Offset(rc, 14).Value = Me.TextBox6.Value
>
>
> End With
>
> wb.Save
> wb.Close
> Application.ScreenUpdating = True
> Unload Me
> Inputdata.Show
> End Sub
>
>
>
> Terima kasih sekali lagi untuk bantuan nya
>
>
>
>
>
>
>
Reply | Threaded
Open this post in threaded view
|

Fw: [belajar-excel] Kirim data ke excel lain menggunakan VBA

hendrik karnadi
In reply to this post by hendrik karnadi
 Kalau macronya dijalankan di Sheet yang berbeda harus disebutkan nama Sheetnya didepan Range.Jangan menggunakan ActiveSheet karena mengacu pada kalimat ini :"........worbook excel yang saya gunakan untuk mengirimkan data ke table master dengan menggunakan VBA" macronya kan dijalankan dari sheet lain.
Salam,HK

   ----- Forwarded message ----- From: hendrik karnadi <[hidden email]>To: Stephen Saputro [hidden email] [belajar-excel] <[hidden email]>Sent: Monday, 5 August 2019, 08:48:35 pm GMT+7Subject: Re: [belajar-excel] Kirim data ke excel lain menggunakan VBA
  Hai Stephen,
Coba code ini...rc = Range("A" & Rows.Count).End(xlUp).Row
untuk mencari baris terakhir pada kolom A.

Salam,HK

    Pada Senin, 5 Agustus 2019 16.47.29 GMT+7, Stephen Saputro [hidden email] [belajar-excel] <[hidden email]> menulis:  
 
    

Selamat sore semuanya,
Mohon kiranya dapat di bantu kasus saya ini. Saya  membuat sebuah database sederhana, di mana ada satu workbook yang saya gunakan sebagai Table master. dan satu lagi worbook excel yang saya gunakan untuk mengirimkan data ke table master dengan menggunakan VBA.
Permasalahan nya adalah script yang saya pakai di bawah ini, terkadang mengirimkan data dengan baik ke data row paling akhir dari sebuah table master, tapi terkadang data tersebut malah menimpa data lain yang sudah ada dengan row yang berbeda ( data yang masuk ke kolom2 nya sudah tepat hanya saja row nya yang berbeda, seharus nya adalah konsisten di row data sesudah row terakhir )
Script nya adalah sbb :
Private Sub Kirimdata_Click()

If TextBox1.Value = "" Or TextBox4..Value = "" Then
    If MsgBox("Form is not complete.. Please fill the data No and the amount !", vbQuestion + vbYesNo) <> yes Then
    Exit Sub
    End If
End If


Dim rc As Long
Dim path As String
Dim wb As Workbook

Application.ScreenUpdating = False
path = "\\blabla\blabla\blabla\master.xlsm"
rc = ActiveSheet.UsedRange.Rows.Count

Workbooks.Open "\\blabla\blabla\blabla\master.xlsm "
Set wb = ActiveWorkbook
rc = ActiveSheet.UsedRange.Rows.Count

With Sheets(1).Range("A1")
..Offset(rc, 0).Value = Me.ListBox1.Value 
..Offset(rc, 1).Value = Me.ListBox2.Value
..Offset(rc, 2).Value = Me.ListBox3..Value
..Offset(rc, 3).Value = Me.ListBox4.Value
..Offset(rc, 4).Value = Me.ListBox5.Value
..Offset(rc, 5).Value = Me..TextBox1.Value
..Offset(rc, 6).Value = Me.TextBox2.Value
..Offset(rc, 7).Value = Me.TextBox3.Value
..Offset(rc, 8).Value = Me.ListBox6.Value
..Offset(rc, 9).Value = Me.TextBox5.Value
..Offset(rc, 10).Value = Me.TextBox4.Value
..Offset(rc, 11).Value = Me.TextBox7.Value
..Offset(rc, 12).Value = Me.TextBox8.Value
..Offset(rc, 13).Value = Me.ListBox7.Value
..Offset(rc, 14).Value = Me.TextBox6.Value
End With

wb.Save
wb.Close 
Application.ScreenUpdating = True
Unload Me
Inputdata.Show
End Sub

Terima kasih sekali lagi untuk bantuan nya
     
Reply | Threaded
Open this post in threaded view
|

Re: Fw: [belajar-excel] Kirim data ke excel lain menggunakan VBA

Stephen Saputro
Noted Pak,

Terima kasih ya Pak

On Tue, Aug 6, 2019 at 7:09 PM hendrik karnadi [hidden email]
[belajar-excel] <[hidden email]> wrote:

>
>
> Kalau macronya dijalankan di Sheet yang berbeda harus disebutkan nama
> Sheetnya didepan Range.
> *Jangan menggunakan ActiveSheet karena mengacu pada kalimat ini :*
> *"........**worbook excel yang saya gunakan untuk mengirimkan data ke
> table master dengan menggunakan VBA" macronya kan dijalankan dari sheet
> lain*.
>
> Salam,
> HK
>
>
> ----- Forwarded message -----
> *From:* hendrik karnadi <[hidden email]>
> *To:* Stephen Saputro [hidden email] [belajar-excel] <
> [hidden email]>
> *Sent:* Monday, 5 August 2019, 08:48:35 pm GMT+7
> *Subject:* Re: [belajar-excel] Kirim data ke excel lain menggunakan VBA
>
> Hai Stephen,
>
> Coba code ini...
> rc = Range("*A*" & Rows.Count).End(xlUp).Row
> untuk mencari baris terakhir pada kolom *A*.
>
> Salam,
> HK
>
>
> Pada Senin, 5 Agustus 2019 16.47.29 GMT+7, Stephen Saputro
> [hidden email] [belajar-excel] <[hidden email]>
> menulis:
>
>
>
>
> Selamat sore semuanya,
>
> Mohon kiranya dapat di bantu kasus saya ini. Saya  membuat sebuah database
> sederhana, di mana ada satu workbook yang saya gunakan sebagai Table
> master. dan satu lagi worbook excel yang saya gunakan untuk mengirimkan
> data ke table master dengan menggunakan VBA.
>
> Permasalahan nya adalah script yang saya pakai di bawah ini, terkadang
> mengirimkan data dengan baik ke data row paling akhir dari sebuah table
> master, tapi terkadang data tersebut malah menimpa data lain yang sudah ada
> dengan row yang berbeda ( data yang masuk ke kolom2 nya sudah tepat hanya
> saja row nya yang berbeda, seharus nya adalah konsisten di row data sesudah
> row terakhir )
>
> Script nya adalah sbb :
>
> Private Sub Kirimdata_Click()
>
> If TextBox1.Value = "" Or TextBox4..Value = "" Then
>     If MsgBox("Form is not complete.. Please fill the data No and the
> amount !", vbQuestion + vbYesNo) <> yes Then
>     Exit Sub
>     End If
> End If
>
>
> Dim rc As Long
> Dim path As String
> Dim wb As Workbook
>
> Application.ScreenUpdating = False
> path = "\\blabla\blabla\blabla\master.xlsm"
> rc = ActiveSheet.UsedRange.Rows.Count
>
> Workbooks.Open " \\blabla\blabla\blabla\master.xlsm "
> Set wb = ActiveWorkbook
> rc = ActiveSheet.UsedRange.Rows.Count
>
> With Sheets(1).Range("A1")
> .Offset(rc, 0).Value = Me.ListBox1.Value
> .Offset(rc, 1).Value = Me.ListBox2.Value
> .Offset(rc, 2).Value = Me.ListBox3..Value
> .Offset(rc, 3).Value = Me.ListBox4.Value
> .Offset(rc, 4).Value = Me.ListBox5.Value
> .Offset(rc, 5).Value = Me..TextBox1.Value
> .Offset(rc, 6).Value = Me.TextBox2.Value
> .Offset(rc, 7).Value = Me.TextBox3.Value
> .Offset(rc, 8).Value = Me.ListBox6.Value
> .Offset(rc, 9).Value = Me.TextBox5.Value
> .Offset(rc, 10).Value = Me.TextBox4.Value
> .Offset(rc, 11).Value = Me.TextBox7.Value
> .Offset(rc, 12).Value = Me.TextBox8.Value
> .Offset(rc, 13).Value = Me.ListBox7.Value
> .Offset(rc, 14).Value = Me.TextBox6.Value
>
> End With
>
> wb.Save
> wb.Close
> Application.ScreenUpdating = True
> Unload Me
> Inputdata.Show
> End Sub
>
> Terima kasih sekali lagi untuk bantuan nya
>
>
>