Sayfaya uygulanan makroyu başka bir sayfan yönetme

Katılım
17 Haziran 2006
Mesajlar
52
Excel Vers. ve Dili
Excel Türkçe - 2002
sayfa1 deki bulunan tuşa basıldığında sayfa2 de bulunan çalışmayı güncelleştiriyor. Yapılan bu güncelleştirmeyi sayfa2 ye gitmeden güncelleştirmesini istiyorum.
Yardımcı olan arkadaşlara şimdiden teşekkür ederim.
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,915
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Kod:
Sub GÜNCELLE()
sil = Sheets("Sayfa2").Cells(65536, 6).End(xlUp).Row
Sheets("Sayfa2").Range("F2:H" & sil) = ""
son = Sheets("Sayfa2").Cells(65536, 1).End(xlUp).Row + 1
For i = 2 To son
If Sheets("Sayfa2").Cells(i, 3) > 0 Then
c = c + 1
Sheets("Sayfa2").Cells(c + 1, 6) = Sheets("Sayfa2").Cells(i, 1)
Sheets("Sayfa2").Cells(c + 1, 7) = Sheets("Sayfa2").Cells(i, 2)
Sheets("Sayfa2").Cells(c + 1, 8) = Sheets("Sayfa2").Cells(i, 3)
End If
Next
End Sub
 
Katılım
17 Haziran 2006
Mesajlar
52
Excel Vers. ve Dili
Excel Türkçe - 2002
Teşekkür.

Ali kardeş
Göndermiş olduğun bilgiler için teşekkür ederim.
İşimi görür.
 
Katılım
17 Haziran 2006
Mesajlar
52
Excel Vers. ve Dili
Excel Türkçe - 2002
Güncelle makrosunda sayfa2 de bulunan bilgileri sayfa2 ye gitmeden güncelliyor ama sayfa3 e gitmeden nasıl güncelleyecek.


Sub GÜNCELLE()
sil = Sheets("sayfa2").Cells(65536, 6).End(xlUp).Row
Sheets("sayfa2").Range("F2:H" & sil) = ""
son = Sheets("sayfa2").Cells(65536, 1).End(xlUp).Row + 1
For i = 2 To son
If Sheets("sayfa2").Cells(i, 3) > 0 Then
c = c + 1
Sheets("sayfa2").Cells(c + 1, 6) = Sheets("sayfa2").Cells(i, 1)
Sheets("sayfa2").Cells(c + 1, 7) = Sheets("sayfa2").Cells(i, 2)
Sheets("sayfa2").Cells(c + 1, 8) = Sheets("sayfa2").Cells(i, 3)
End If
Next

'buradan sonra sayfa3 deki bilgileri güncellesin

For i = 1 To Worksheets.Count
Worksheets("bordro").Select
For Each t In Range("C11:C60").Cells
If t.Value > 1 Then 'boş hücreleri göster
t.EntireRow.Hidden = False
End If
Next t
Next i
'boş hücreleri gizler
Application.ScreenUpdating = False
For X = 2 To [C65536].End(3).Row
If Cells(X, 3) = 0 Then
Rows(X).EntireRow.Hidden = True
End If
Next
Application.ScreenUpdating = True
End Sub
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,915
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Kod:
[COLOR=red][B]..................................................................[/B][/COLOR]
sil = Sheets("sayfa2").Cells(65536, 6).End(xlUp).Row
Sheets("sayfa2").Range("F2:H" & sil) = ""
son = Sheets("sayfa2").Cells(65536, 1).End(xlUp).Row + 1
For i = 2 To son
If Sheets("sayfa2").Cells(i, 3) > 0 Then
c = c + 1
Sheets("sayfa2").Cells(c + 1, 6) = Sheets("sayfa2").Cells(i, 1)
Sheets("sayfa2").Cells(c + 1, 7) = Sheets("sayfa2").Cells(i, 2)
Sheets("sayfa2").Cells(c + 1, 8) = Sheets("sayfa2").Cells(i, 3)
End If
Next
deger = Sheets("sayfa3").Cells(65536, 6).End(xlUp).Row
Sheets("sayfa3").Range("F2:H" & deger) = ""
son = Sheets("sayfa3").Cells(65536, 1).End(xlUp).Row + 1
For i = 2 To son
If Sheets("sayfa3").Cells(i, 3) > 0 Then
b = b + 1
Sheets("sayfa3").Cells(b + 1, 6) = Sheets("sayfa3").Cells(i, 1)
Sheets("sayfa3").Cells(b + 1, 7) = Sheets("sayfa3").Cells(i, 2)
Sheets("sayfa3").Cells(b + 1, 8) = Sheets("sayfa3").Cells(i, 3)
End If
Next
[B][COLOR=red]..................................................................................[/COLOR][/B]
şeklinde devam edin.
 
Katılım
17 Haziran 2006
Mesajlar
52
Excel Vers. ve Dili
Excel Türkçe - 2002
Aşağıdaki kısmı sayfa3 e gitmeden makroyu uygulasın.
............................................................................................
For i = 1 To Worksheets.Count
Worksheets("sayfa3").Select
For Each t In Range("C11:C60").Cells
If t.Value > 1 Then 'boş hücreleri göster
t.EntireRow.Hidden = False
End If
Next t
Next i
'boş hücreleri gizler
Application.ScreenUpdating = False
For X = 2 To [C65536].End(3).Row
If Cells(X, 3) = 0 Then
Rows(X).EntireRow.Hidden = True
End If
Next
Application.ScreenUpdating = True
End Sub
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,915
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Kod:
[COLOR=red][B].............................................................[/B][/COLOR]
For i = 1 To Worksheets.Count
For Each t In Sheets("sayfa3").Range("C11:C60").Cells
If t.Value > 1 Then
t.EntireRow.Hidden = False
End If
Next t
Next i
Application.ScreenUpdating = False
For X = 2 To Sheets("sayfa3").[C65536].End(3).Row
If Sheets("sayfa3").Cells(X, 3) = 0 Then
Rows(X).EntireRow.Hidden = True
End If
Next
Application.ScreenUpdating = True
[B][COLOR=red].............................................................[/COLOR][/B]
 
Katılım
17 Haziran 2006
Mesajlar
52
Excel Vers. ve Dili
Excel Türkçe - 2002
İstediğim olmadı ama yinede yardımcı olduğun için Teşekkür ederim.
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,915
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Sn hduyar kodları nerden aldığını bilmiyorum ama

For i = 1 To Worksheets.Count ile sayfaları saydırıyorsunuz i değişkeni hiçbiryerde kullanılmıyor amacınız Sayfa3 deki C11-C60 arasındaki boş yada sıfır olan hücrelerin satırlarını gizlemekmidir.
 
Katılım
17 Haziran 2006
Mesajlar
52
Excel Vers. ve Dili
Excel Türkçe - 2002
Evet.
Önce koşula bağlı 1 den büyük gizli sütunları gösterin sonrada 0 olan sütunları gizlesin şeklinde bir makro çalışması yapıyorum.
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,915
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Kod:
[FONT=Times New Roman][SIZE=3]Sub gizle()[/SIZE][/FONT]
[SIZE=3][FONT=Times New Roman] Dim i As Integer[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]  Application.ScreenUpdating = False[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]  For i = 11 To 60[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]       If Sheets("Sayfa3").Cells(i, 3) > 1 Then[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]       Sheets("Sayfa3").Cells(i, 3).EntireRow.Hidden = False[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]       End If[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]       If Sheets("Sayfa3").Cells(i, 3) = 0 Then[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]       Sheets("Sayfa3").Cells(i, 3).EntireRow.Hidden = True[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]       End If[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]      Next[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]  Application.ScreenUpdating = False[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]End Sub[/FONT][/SIZE]
 
Son düzenleme:
Katılım
17 Haziran 2006
Mesajlar
52
Excel Vers. ve Dili
Excel Türkçe - 2002
Tamam oldu. Teşekkür ederim.
 
Üst