• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Makronun çalışacağı sayfanın belirlenmesi

  • Konbuyu başlatan Konbuyu başlatan ITOKER
  • Başlangıç tarihi Başlangıç tarihi
Katılım
3 Eylül 2014
Mesajlar
34
Excel Vers. ve Dili
2010
Merhabalar;

Aşağıdaki makroyu çalışma sayfası yerine hedef sayfa yani örneğin Sayfa2 De çalışmasını sağlayamadım, yardımlarınızı rica ediyorum.




Sub BORDRO()

'Raider

Dim MyFile As String

Dim i As Long, j As Integer





Const MyPath As String = "C:\Temp\BORDRO\"

Const MySh As String = "Sayfa1"

Dim MyArg As String





Range("A1:A050").ClearContents

MyFile = Dir(MyPath & Application.PathSeparator & "*.xlsx", vbDirectory)

Do While MyFile <> ""

If MyFile = ThisWorkbook.Name Then GoTo ResumeSub:

MyArg = "'" & MyPath & "[" & MyFile & "]" & MySh & "'!R"

For j = 1 To 41

For i = 1 To 50

Cells(i, j) = Cells(i, j) + ExecuteExcel4Macro(MyArg & i & "C" & j)






Next

Next

ResumeSub:

MyFile = Dir

Loop






End Sub
 
Merhaba
İstediğiniz verilerin 2. sayfaya gelmesi ise aşağıdaki gibi deneyiniz.
Kod:
Sub BORDRO()
Dim MyFile As String
Dim i As Long, j As Integer
Const MyPath As String = "C:\Temp\BORDRO\"
Const MySh As String = "Sayfa1"
Dim MyArg As String
[COLOR="Red"]Sayfa2.[/COLOR]Range("A1:AO50").ClearContents
MyFile = Dir(MyPath & Application.PathSeparator & "*.xlsx", vbDirectory)
Do While MyFile <> ""
If MyFile = ThisWorkbook.Name Then GoTo ResumeSub:
MyArg = "'" & MyPath & "[" & MyFile & "]" & MySh & "'!R"
For j = 1 To 41
For i = 1 To 50
[COLOR="Red"]Sayfa2.[/COLOR]Cells(i, j) = [COLOR="Red"]Sayfa2.[/COLOR]Cells(i, j) + ExecuteExcel4Macro(MyArg & i & "C" & j)
Next
Next
ResumeSub:
MyFile = Dir
Loop
End Sub

Ama; verilerin alınacağı sayfa değişecekse;
Kod:
Const MySh As String = "[COLOR="Red"]Sayfa2[/COLOR]"
 
Son düzenleme:
Öncelikle teşekkür ederim,

verinin alınacağı alanda bir değişiklik yapmayacağım ancak bu hali ile çalıştırdığımda

" Sayfa2.Range("A1:A050").ClearContents "

satırda takılıyor.

C:\Temp\BORDRO\ doyasındaki dosyanın Sayfa1 inden, çalıştığım dosyanın Sayfa2 sine almak istiyorum.
 
Sayfa2.Range("A1:A050").ClearContents

Kırmızı sıfırın yerine "O" olması gerek("O" sütunu 50. satır dahil olacaksa) gibi;
Kod:
Sayfa2.Range("A1:AO50").ClearContents
sadece "A" sütunu ise "A50 " şeklinde deneyelim

Yukarıdaki kodda değişti
 
merhaba;

Bahsettiğiniz düzeltmeyi yaptım ama sonuç alamadım, :(
 

Ekli dosyalar

Geri
Üst