Merhaba, RANDIMAN-METRE sayfasında X6 Hücresine her gün manuel olarak yazılan tarih bilgisine göre X7 ile X50 arasında yazılı olan metre " rakam" , bilgisini TEZGAH GÜN-AY ÜRETİM TAKİP Sayfasında A4 Hücresinden itibaren bütün A Sütununda yazılı olan Tarih bilgisi ile karşılaştırıp, doğru satırı bulduğunda hemen yanında bulunan B Hücresinden AS Hücresine kadar RANDIMAN-METRE Sayfasından kopyalanan 44 adet metre bilgisini değerini yapıştırmak istiyorum.
Aşağıda ki Makro ile başka bir çalışma kitabında istediğimi yapabiliyorum ama asıl çalışma kitabında Run Time 91 hatası veriyor. Sebebini anlayamadım. Yardımcı olursanız çok memnun olurum.
Not : Yukarıda asıl yapmak istediğimi anlattım. Asıl yapmak istediğimi yapamadığım için ve elimde sizin sitenizde Uzman Orion1 'in bir başkasına yardımcı olmak için yazdığı aşağıdaki Makroyu kullanabilmek adına; RANDIMAN-METRE Sayfasında ki B54 : AT54 Satırına yatay olarak almak istediğim bilgiyi kopyaladım.Aşağıda yazılı olan makroyu bu şekilde kullanmaya çalıştım. Asıl yapmak İstediğim ise yukarıda anlatığım gibi direk X sütunundan kopyalama yapmak.
Şimdiden yardımlarınız için teşekkür ederim...
Sub Makro3()
' Makro3 Makro
Dim k As Range, sonsat1 As Long, sonsat2 As Long, i As Long, sh As Worksheet
Set sh = Sheets("RANDIMAN-METRE")
Sheets("TEZGAH GÜN-AY ÜRETİM TAKİP").Select
Range("B4:AS" & Rows.Count).ClearContents
'SAYFA 2 DE Kİ YAPIŞTIRILACAK ALANI TEMİZLEME
Set sh = Sheets("RANDIMAN-METRE")
sonsat1 = sh.Cells(Rows.Count, "B").End(xlUp).Row
'SAYFA 1 DEKİ B SÜNUNUNDA Kİ SON SATIRI BULDU
sonsat2 = Cells(Rows.Count, "A").End(xlUp).Row
'SAYFA 2 DEKİ A SÜTUNUNDA Kİ SON SATIRI BULDU
Application.ScreenUpdating = False
For i = 54 To sonsat1
'SAYFA 1 DE Kİ B54 DAN B SÜNUNUNDA Kİ SON YAZILI OLAN TARİHE KADAR DÖNGÜ KURMA
Set k = Range("A2:A" & sonsat2).Find(sh.Cells(i, "B").Value, , xlValues, xlWhole)
If Not k Is Nothing Then sh.Range("C" & i & ":AS" & i).Copy
' SAYFA 1 DE KOPYALANACAK ALANI TANIMLAMA
Range("B" & k.Row).PasteSpecial xlPasteValues
' SAYFA 2 DE YAPIŞTIRMAYA BAŞLANACAK ALANIN BAŞLANGIç SÜTUNUNU TANIMLAMA
Next i
Application.ScreenUpdating = True
MsgBox "Veriler aktarıldı." & vbLf & "TEBRİKLER"
End Sub
Aşağıda ki Makro ile başka bir çalışma kitabında istediğimi yapabiliyorum ama asıl çalışma kitabında Run Time 91 hatası veriyor. Sebebini anlayamadım. Yardımcı olursanız çok memnun olurum.
Not : Yukarıda asıl yapmak istediğimi anlattım. Asıl yapmak istediğimi yapamadığım için ve elimde sizin sitenizde Uzman Orion1 'in bir başkasına yardımcı olmak için yazdığı aşağıdaki Makroyu kullanabilmek adına; RANDIMAN-METRE Sayfasında ki B54 : AT54 Satırına yatay olarak almak istediğim bilgiyi kopyaladım.Aşağıda yazılı olan makroyu bu şekilde kullanmaya çalıştım. Asıl yapmak İstediğim ise yukarıda anlatığım gibi direk X sütunundan kopyalama yapmak.
Şimdiden yardımlarınız için teşekkür ederim...
Sub Makro3()
' Makro3 Makro
Dim k As Range, sonsat1 As Long, sonsat2 As Long, i As Long, sh As Worksheet
Set sh = Sheets("RANDIMAN-METRE")
Sheets("TEZGAH GÜN-AY ÜRETİM TAKİP").Select
Range("B4:AS" & Rows.Count).ClearContents
'SAYFA 2 DE Kİ YAPIŞTIRILACAK ALANI TEMİZLEME
Set sh = Sheets("RANDIMAN-METRE")
sonsat1 = sh.Cells(Rows.Count, "B").End(xlUp).Row
'SAYFA 1 DEKİ B SÜNUNUNDA Kİ SON SATIRI BULDU
sonsat2 = Cells(Rows.Count, "A").End(xlUp).Row
'SAYFA 2 DEKİ A SÜTUNUNDA Kİ SON SATIRI BULDU
Application.ScreenUpdating = False
For i = 54 To sonsat1
'SAYFA 1 DE Kİ B54 DAN B SÜNUNUNDA Kİ SON YAZILI OLAN TARİHE KADAR DÖNGÜ KURMA
Set k = Range("A2:A" & sonsat2).Find(sh.Cells(i, "B").Value, , xlValues, xlWhole)
If Not k Is Nothing Then sh.Range("C" & i & ":AS" & i).Copy
' SAYFA 1 DE KOPYALANACAK ALANI TANIMLAMA
Range("B" & k.Row).PasteSpecial xlPasteValues
' SAYFA 2 DE YAPIŞTIRMAYA BAŞLANACAK ALANIN BAŞLANGIç SÜTUNUNU TANIMLAMA
Next i
Application.ScreenUpdating = True
MsgBox "Veriler aktarıldı." & vbLf & "TEBRİKLER"
End Sub
