• DİKKAT

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

5 makroya tek buton atamak

Katılım
5 Eylül 2007
Mesajlar
1,247
Excel Vers. ve Dili
ofis 2010
Sub liste_ad_sil()
'
' liste_ad_sil Makro
'
Range("A2:C1210").Select
Selection.ClearContents
Range("M2").Select
End Sub
Sub aktar_urun_59()
Dim sonsat As Long, sh As Worksheet
Sheets("URUN_LISTE").Select
Range("A2:C" & Rows.Count).ClearContents
Set sh = Sheets("sabitler")
sonsat = sh.Cells(Rows.Count, "B").End(xlUp).Row
Application.ScreenUpdating = False
sh.Range("B2:D" & sonsat).Copy Range("A2")
Application.ScreenUpdating = True
End Sub
Sub sil()
'
' sil Makro
Range("D2:E1000").Select
Selection.ClearContents
Range("D2").Select
End Sub
Sub aktarr()
Application.ScreenUpdating = False
On Error Resume Next
Set s1 = ThisWorkbook.Worksheets("HAREKET")
Set s2 = ThisWorkbook.Worksheets("URUN_LISTE")
For i = 2 To s2.Range("A65536").End(xlUp).Row
s1.Cells(1, 1) = s2.Cells(i, 1)

s2.Cells(i, 4) = s1.Cells(1, "P")
s2.Cells(i, 5) = s1.Cells(1, "Q")

Next i
Application.ScreenUpdating = True
MsgBox "İşlem TAMAM.", vbInformation
End Sub

Sub urun_listF()
On Error Resume Next
Application.EnableEvents = False
son_satir = Range("A65530").End(3).Row
Range("F2").AutoFill Destination:=Range("F2:F" & son_satir) 'formülleri bir alt satıra kopyalama
Range("G2").AutoFill Destination:=Range("G2:G" & son_satir)
Range("H2").AutoFill Destination:=Range("H2:H" & son_satir)
Range("I2").AutoFill Destination:=Range("I2:I" & son_satir)
Range("J2").AutoFill Destination:=Range("J2:J" & son_satir)
Application.EnableEvents = True
End Sub


yazdığım sırada teker teker butonlarla makroları çalıştırıyorum. tek butonla beş makroyu sırayla çalıştırmanın bir kolayını arıyorum.
Teşekkürler
 
Merhaba.

Kodların bazılarında sayfa adı belirtilmeden içerik temizleme, formül çoğaltma gibi işlemler mevcut.
Hangi kod'u hangi sayfada iken çalıştıryorsunuz acaba? Hangi kod'un bağlı olduğ düğme hangi sayfadadır?
Ayrı ayrı belirtirseniz bakayım.
.
 
Merhaba.

Kodların bazılarında sayfa adı belirtilmeden içerik temizleme, formül çoğaltma gibi işlemler mevcut.
Hangi kod'u hangi sayfada iken çalıştıryorsunuz acaba? Hangi kod'un bağlı olduğ düğme hangi sayfadadır?
Ayrı ayrı belirtirseniz bakayım.
.

Kodların hepsi "URUN_LISTE" sayfasında çalışıyor. aktar_urun_59 makrosu "sabitler" sayfasından, aktarr makrosu "HAREKET" sayfasından bilgi getiriyor. diğer makrolar aynı "URUN_LISTE" sayfasında.
 
Merhaba.

Hata alma veya yanlış işlem gerçekleşme olasılığı var ama aşağıdaki gibi deneyin isterseniz.
Sorun yaşarsanız, örnek belge (eski haliyle, düğmelerin ve kodların olduğu) üzerinden bakalım.
.
Kod:
[FONT="Arial Narrow"]Sub İŞLEM_BRN()
Set ul = Sheets("URUN_LISTE"): Set sb = Sheets("sabitler"): Set ha = Sheets("HAREKET")
ul.Range("A2:E" & ul.Cells(65536, 1).End(3).Row).ClearContents
Application.ScreenUpdating = False
sb.Range("B2:D" & sb.Cells(Rows.Count, "B").End(xlUp).Row).Copy ul.Range("A2")
For i = 2 To ul.Range("A65536").End(xlUp).Row
ha.Cells(1, 1) = ul.Cells(i, 1): ul.Cells(i, 4) = ha.Cells(1, "P"): ul.Cells(i, 5) = ha.Cells(1, "Q")
Next i
Application.ScreenUpdating = True
MsgBox "İşlem TAMAM.", vbInformation
End Sub[/FONT]
 
Son düzenleme:
Merhaba.

Hata alma veya yanlış işlem gerçekleşme olasılığı var ama aşağıdaki gibi deneyin isterseniz.
Sorun yaşarsanız, örnek belge (eski haliyle, düğmelerin ve kodların olduğu) üzerinden bakalım.
.
Kod:
[FONT="Arial Narrow"]Sub İŞLEM_BRN()
On Error Resume Next
Set sh = Sheets("sabitler")
Set s1 = ThisWorkbook.Worksheets("HAREKET") 'aktarr
Set s2 = ThisWorkbook.Worksheets("URUN_LISTE") 'aktarr
Application.ScreenUpdating = False: Application.EnableEvents = False
Range("A2:E" & Rows.Count).ClearContents
sh.Range("B2" & sh.Cells(Rows.Count, "B").End(xlUp).Row).Copy Range("A2")
    For i = 2 To s2.Range("A65536").End(xlUp).Row 'aktarr
        s1.Cells(1, 1) = s2.Cells(i, 1) 'aktarr
        s2.Cells(i, 4) = s1.Cells(1, "P") 'aktarr
        s2.Cells(i, 5) = s1.Cells(1, "Q") 'aktarr
    Next i 'aktarr
    Range("F2:J2").AutoFill Destination:=Range("F2:J" & Range("A65536").End(3).Row) 'urun_listF
Application.ScreenUpdating = False: Application.EnableEvents = True
MsgBox "İşlem TAMAM.", vbInformation
End Sub[/FONT]

dediğiniz gibi olmadı ekli dosyayı yükledim.http://s6.dosya.tc/server7/40o40h/STOK_MSTR.rar.html
 
Bir önceki cevabımdaki kod'u güncelledim, sayfayı yenileyerek kortrol edin ve yeni kodları deneyin.
İstediğiniz sonucun elde edilmesi gerekir.
 
Geri
Üst