- Katılım
- 1 Kasım 2012
- Mesajlar
- 1,524
- Excel Vers. ve Dili
- Office 365 Türkçe
Merhaba arkadaşlar açık olan dosyamdan kapalı olan dosyaya, dosyayı açmadan veri göndermek istiyorum bunu aşağıdaki kodla yapıyorum fakat bu kod dosyayı açıp işlemi yapıp kaydedip kapatıyor buda işlemin uzamasına neden oluyor ve kod da yavaşlıyor ben bunu daha hızlı nasıl yapabilirim yardımlarınız için teşekkür ederim
Açık olan dosya TABLO dosyasıdır
Kod:
Option Explicit
Sub veri_gönder()
Dim XCL As Application, KTP As Workbook, ÇLŞ As Variant
Dim S1 As Worksheet, S2 As Worksheet, YL As String
Dim STR As Long, STR1 As Long, STR2 As Long
Application.ScreenUpdating = False
Set XCL = CreateObject("Excel.Application")
XCL.Visible = False
Set S1 = Sheets("ÇIKIŞ")
STR = S1.Range("A" & Rows.Count).End(xlUp).Row
Set KTP = XCL.Workbooks.Open(ThisWorkbook.Path & "\Kitap1.xls")
ÇLŞ = ActiveCell.Address
Set S2 = KTP.Sheets("Çıkış")
STR1 = S2.Range("B" & Rows.Count).End(xlUp).Row + 1
S1.Range("A4:A" & STR).Copy
S2.Range("B" & STR1).PasteSpecial (xlPasteValuesAndNumberFormats)
S1.Range("B4:B" & STR).Copy
S2.Range("C" & STR1).PasteSpecial (xlPasteValuesAndNumberFormats)
S1.Range("C4:C" & STR).Copy
S2.Range("D" & STR1).PasteSpecial (xlPasteValuesAndNumberFormats)
Application.CutCopyMode = False
STR2 = S2.Range("B" & Rows.Count).End(xlUp).Row
S2.Range("E" & STR1 & ":E" & STR2) = S1.Range("E5")
S2.Range("F" & STR1 & ":F" & STR2) = S1.Range("D5")
S2.Range("G" & STR1 & ":G" & STR2) = " " & Application.UserName
S2.Range("A2:A" & STR2).DataSeries rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, Step:=1, Trend:=False
S2.Range(ÇLŞ).Select
KTP.Save: KTP.Close: XCL.Quit
Application.ScreenUpdating = True
End Sub
Son düzenleme:
