Makroda değişiklik yapmak istiyorum.

Katılım
22 Kasım 2005
Mesajlar
174
Makro konusunda daha yeniyim.Sayın V.Basic For Applications tarafından hazırlanan makroda ana sayfada opr no satırındaki değerlerden aktarma yapmak istiyorum. Buradaki değeler sayı olduğu için sayfa adınıda sayı olarak verdiğimde aktarma yapmıyor. Diğer harf yazılı sütunları ayırıyor. Makroda nasıl bir değişiklik gerekir. Makroda aşağıda. Örnek sayfada ekledim.
If Cells(i, 10).Value = Sheets(z).Name Then
Bu satırda 11 deki değerleri aktarıyor. Ama 10 yazdığımda aktarma yapmıyor.

Sub aktar()
Set s1 = Sheets("anasayfa")
For i = 2 To Sheets.Count
Sheets(i).Range("a2:w5000").Clear
For say = 2 To Sheets.Count
s1.[a3:v3].Copy
Sheets(say).[a1].PasteSpecial
Next
For bak = 4 To s1.[h65536].End(3).Row
If Sheets(i).Name = Range("h" & bak).Value Then
Range(s1.Range("h" & bak).Offset(0, -7), s1.Range("h" & bak).Offset(0, 14)).Copy
s = WorksheetFunction.CountA(Sheets(i).[a1:a65536])
Sheets(i).Range("a" & s + 1).PasteSpecial
End If
Next
Next
Application.CutCopyMode = False
End Sub
Sub sayfayaAktar()
For z = 2 To Sheets.Count
Sheets(z).[a2:ae5000].ClearContents
For i = 2 To [a65536].End(3).Row
w = Sheets(z).[a65536].End(3).Row + 1
If Cells(i, 10).Value = Sheets(z).Name Then
Sheets(z).Rows(w).Value = Sheets("anasayfa").Rows(i).Value
End If
Next
Next
'Call duzen
End Sub
Sub duzen()
For x = 2 To Worksheets.Count
Worksheets(x).Select
Columns("A:z").Select
Selection.Columns.AutoFit
[a1].Select
Next
Sheets("anasayfa").Select
[a1].Select
End Sub
 
Son düzenleme:
Katılım
22 Kasım 2005
Mesajlar
174
Hala beceremedim. Kafama takıldı.

Dünden beri uğraşıyorum sorun kesinlikle sayfa adının sayı olması ama makroda bunu nasıl belirteceğim?
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
O zaman sayfa adını değiştirin.

2 , 3 gibi değil O2 , O3 gibi olmuyor mu? "O" o (sıfır) değil , Alfabetik.

Kod:
Sub sayfayaAktar()
For z = 2 To Sheets.Count
Sheets(z).[a2:ae5000].ClearContents
For i = 2 To [a65536].End(3).Row
w = Sheets(z).[a65536].End(3).Row + 1
If Cells(i, 10).Value = Sheets(z).Name Then
Sheets(z).Rows(w).Value = Sheets("anasayfa").Rows(i).Value
End If
Next
Next
End Sub
 
Katılım
22 Kasım 2005
Mesajlar
174
Bende öyle yapmak zorunda kaldım.

Şimdi o işlemi bitirdim ama bu soru kafama takılmıştı. Tablom biraz büyük olduğu için makroyu değiştirmek kolay geldi onuda yapamadım. Tablomu bundan sonraki verileri bu şekilde girecek hale getirdim. İlginize teşekkürler. Emeğinize sağlık.
 
Üst