Araç çubunda makro

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-03-2028
Araç çubuğuna 3 adet düğme makro ekledim , fakat bunların sadece binnur adlı excel dosyası ile açılıp binnur adlı excel dosyası kapatılınca diğer excel dosyalarında görünmesin istiyorum,yardım edermisiniz?
 

Kemal Demir

Özel Üye
Katılım
29 Temmuz 2004
Mesajlar
2,108
Merhaba,

Daha açıklayacı olması açısından küçük bir örnek dosya eklermısınız.
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-03-2028
ilgilendiğiniz için teşekkür edrim.
 

Kemal Demir

Özel Üye
Katılım
29 Temmuz 2004
Mesajlar
2,108
Merhaba,

Alternatif birşey onermek istiyorum,

Kodlarınıza sunu yazabilirsiniz.

Kod:
if ActiveSheet.name="Binnur" then
.
.
.kodlar
Else
MsgBox("İlgili Kullanıcı Değilsiniz")
End if
End Sub
İstediğiniz diğer çözüm için bakmak lazım (calismak )
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-03-2028
Yardımınız için teşekkür ederim.Acaba biribirini Call olarak çağıran birbirenden bağımsız Sub ..() başlayıp End Sub biten 4 adet makroyu tek makro haline getirmek için aralarına ne yazmalıyım
 

Ayhan Ercan

Özel Üye
Katılım
10 Ağustos 2005
Mesajlar
1,573
Excel Vers. ve Dili
Microsoft 365- Türkçe
Yardımınız için teşekkür ederim.Acaba biribirini Call olarak çağıran birbirenden bağımsız Sub ..() başlayıp End Sub biten 4 adet makroyu tek makro haline getirmek için aralarına ne yazmalıyım
Merhaba Sn aydgur

Kod:
Sub test()
Call Makro1
Call Makro2
Call Makro3
Call Makro4
End Sub
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-03-2028
Teşekkür ederim.Şöyle bir sorunum var şu dosya , düzen yazan çubuğa bir adet açılır menü ekledim.Fakat her dosyayı açışımda sağ tıklayıp özelleştir,seçeneğinizi değiştirin,makro ata yapmam gerekiyor.kalıcı nasıl yapabilirim.
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-03-2028
Günaydın ! iyi haftalar benim merak ettiğim; makroları call diye çağırarak değilde sanki tek makor imiş gibi örneğin aralarına End If yazılıp tek makro gibi olurmu ?
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-03-2028
Sub kasaaktar()
Dim b
Sheets("KASA").Select

Range("A2").Select
b = 2
For Each secim In Worksheets("ANASAYFA").Range("F:F")
If secim = "NAKİT TAHSİLAT" Then

b = Sheets("KASA").[A65536].End(3).Row + 1

Worksheets("KASA").Cells(b, 1) = secim.Offset(0, -4)
Worksheets("KASA").Cells(b, 2) = secim.Offset(0, -5)
Worksheets("KASA").Cells(b, 4) = secim.Offset(0, 4)
End If
If secim = "NAKİT ÖDEMEMİZ" Then

b = Sheets("KASA").[A65536].End(3).Row + 1

Worksheets("KASA").Cells(b, 1) = secim.Offset(0, -4)
Worksheets("KASA").Cells(b, 2) = secim.Offset(0, -5)
Worksheets("KASA").Cells(b, 5) = secim.Offset(0, 5)
End If

Next

End Sub
Sub çekaktar()
Dim b
Sheets("ÇEK").Select

Range("A2").Select
b = 2
For Each secim In Worksheets("ANASAYFA").Range("F:F")
If secim = "ÇEK TAHSİLAT" Then

b = Sheets("ÇEK").[A65536].End(3).Row + 1

Worksheets("ÇEK").Cells(b, 1) = secim.Offset(0, -4)
Worksheets("ÇEK").Cells(b, 2) = secim.Offset(0, -5)
Worksheets("ÇEK").Cells(b, 3) = secim.Offset(0, 6)
Worksheets("ÇEK").Cells(b, 4) = secim.Offset(0, 7)
Worksheets("ÇEK").Cells(b, 5) = secim.Offset(0, 8)
Worksheets("ÇEK").Cells(b, 6) = secim.Offset(0, 9)
Worksheets("ÇEK").Cells(b, 7) = secim.Offset(0, 10)
Worksheets("ÇEK").Cells(b, 8) = secim.Offset(0, 11)
Worksheets("ÇEK").Cells(b, 9) = secim.Offset(0, 4)

End If
Next

End Sub
Sub stokaktar()
SonSatir = Sheets("STOK").[A65536].End(3).Row + 1
Sheets("anasayfa").Range("A2:DX80").Copy Sheets("STOK").Range("A" & SonSatir)


End Sub
Sub sontamam()
Sheets("ANASAYFA").Select
For x = 2 To [A65536].End(3).Row
Set s2 = Sheets(Cells(x, 1).Text)
sira = s2.[A65536].End(3).Row + 1
If s2.Name <> "stok" Then
For y = 1 To 9
s2.Cells(sira, y) = Cells(x, y + 1)
Next y
Else
For y = 1 To 127
s2.Cells(sira, y) = Cells(x, y + 1)
Next y
End If
Next x
Sheets("ANASAYFA").Select
Range("A2:H80").ClearContents
Range("J2:J80").ClearContents
Range("L2:Q80").ClearContents
Range("U2:DX80").ClearContents

Range("B2:B80").Value = CDate(Format((Date + 1), "dd.mm.yyyy"))
10 MsgBox "CARİLERE AKTARILDI"
End Sub
Bu makroları tek makro haline nasıl getirebilirim
 

Ayhan Ercan

Özel Üye
Katılım
10 Ağustos 2005
Mesajlar
1,573
Excel Vers. ve Dili
Microsoft 365- Türkçe
Günaydın ! iyi haftalar benim merak ettiğim; makroları call diye çağırarak değilde sanki tek makor imiş gibi örneğin aralarına End If yazılıp tek makro gibi olurmu ?

Günaydın Sn aydgur

Tek bir makro içerisine yazabilirsiniz tabiiki. Ama makrodaki koşulları yerine getirirken bir koşulun ne zaman başlayacağını ve ne zaman biteceğini, sonraki koşulun hangi arada oluşmasını ve bitmesini iyi dengelemeniz ve ona göre doğru bir düzen içerisinde yapmanız lazım. Yoksa isteğinizi tam anlamıyla sağlayamazsınız..
 

Ayhan Ercan

Özel Üye
Katılım
10 Ağustos 2005
Mesajlar
1,573
Excel Vers. ve Dili
Microsoft 365- Türkçe
Sn aydgur

Bu makrolar&#305; tek makro haline nas&#305;l getirebilirim
Hepsini tek bir prosedurun i&#231;ine yazarsan&#305;z tek bir makro haline getirmi&#351; olursunuz. &#304;lk prosedurun sonuna (End Sub dan &#214;nce) "Call" ile di&#287;er makrolar&#305; da pe&#351;ine s&#305;ralayabilirsiniz. Ancak bunu tek bir prosedurun alt&#305;na, yani tek bir makronun alt&#305;na almak i&#351;inizi g&#246;r&#252;rm&#252; bilemem.

Siz bu 4 adet ayr&#305; makroyu, makronun iste&#287;i do&#287;rultusunda i&#351;lem yapt&#305;rabiliyor iken, t&#252;m hepsinin hangi zamanlarda ne &#351;ekilde yapaca&#287;&#305;n&#305; bilmeniz laz&#305;m.

&#214;rnek verecek olursak.

Makro1
Kodun kar&#351;&#305;l&#305;&#287;&#305; : Ahmet bakkala git.

Makro2
Kodun kar&#351;&#305;l&#305;&#287;&#305; : Ahmet bakkaldan d&#246;n.

Makro3
Kodun Kar&#351;&#305;l&#305;&#287;&#305; : 1 adet ekmek al.

Makro4
Kodun Kar&#351;&#305;l&#305;&#287;&#305; : Ekme&#287;in Paras&#305;n&#305; &#214;de.


&#350;imdi bu makrolara bak&#305;nca

S&#305;ralaman&#305;n bu &#351;ekilde olmas&#305; laz&#305;m :

1-Ahmet bakkala git. (makro1)
2-1 Adet ekmek al. (makro3)
3-Ekme&#287;in paras&#305;n&#305; &#246;de (makro4)
4-Ahmet bakkaldan d&#246;n (makro 2)


&#350;imdi e&#287;er, Makro2 den sonra ("Ahmet bakkaldan d&#246;n")
Makro3'&#252; &#231;al&#305;&#351;t&#305;r&#305;rsak ("1 Adet ekmek al.")

"Ahmet Bakkaldan d&#246;nd&#252;kten sonra Ekmek alamayaca&#287;&#305; i&#231;in"
Makrolar&#305; alt alta yazarken yaln&#305;&#351; yaz&#305;ld&#305;&#287;&#305;ndan hi&#231; bir i&#351;e yaramayacakt&#305;r.

E&#287;er bahsetti&#287;im &#246;rnekle ne demek istedi&#287;imi anlatabildiysem,
Yukarda verdi&#287;iniz 4 ayr&#305; makronun s&#305;ralamas&#305; nas&#305;l olacak?
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-03-2028
Tüm bu makrolar ;ANASAYFA adlı sayfadaki bilgileri günsonunda aktarıyor.
Yani önce KASA sayfasına sonra ÇEK sayfasına daha sonra STOK sayfasına en son da sayfa adlarına göre aktarma yapıyor.Tek makro haline getirme sebebim ise ;araç çubuğunda açılır menü yaptım ,her dosya açışımda :özelleştir-komutları yeniden düzenle-seçeğenizi değiştirin-makro ata yapmak zorunda kalıyorum.
 

Ayhan Ercan

Özel Üye
Katılım
10 Ağustos 2005
Mesajlar
1,573
Excel Vers. ve Dili
Microsoft 365- Türkçe
&#304;lk Makronun sonuna :

(End Sub Sat&#305;r&#305;ndan &#246;nce)

Call &#231;ekaktar
Call stokaktar
Call sontamam
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Altın Üyelik Bitiş Tarihi
04-03-2028
İlgilendiğiniz için teşekkür ederim.
 
Üst