• DİKKAT

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

Sub Kodları birleştirmek..!

Katılım
10 Ekim 2010
Mesajlar
1,469
Excel Vers. ve Dili
2010 Türkçe
Merhabalar,
Arkadaşlar son bir işlemle parça parça yapılan kodları artık birleştirmek, tek butona bağlamak ve mümkün olabildiğince hızlı olmasını istiyorum.

Butonlara ben sıra ismini verdim. Sırasıyla Makro özelliği kesinlikle değişmeyecek şekilde tek butona bağlamamız mümkünmüdür. Kodlar aşağıd yazılıdır.






Sub bir()
Application.ScreenUpdating = False
Dim i As Long
For i = Range("b65536").End(3).Row To 2 Step -1
If (Cells(i, "b").Value <> "MH" And Cells(i, "b").Value <> "MD" And _
Cells(i, "b").Value <> "MB") Or (Cells(i, "ı").Value <> "1") Or _
(VBA.Left(Cells(i, "e").Value, 3) <> "000") Then Rows(i).Delete
Next i
Application.ScreenUpdating = True
i = Empty
End Sub

==============================================================================================


Sub iki()
Dim i As Long
For i = 1 To Range("C65536").End(3).Row
Cells(i, "C") = Mid(Cells(i, "C"), 3, 20)
Next i: i = Empty
End Sub



Sub uc()
Dim c As Range, Adr As Variant
With Range("A:A")
Set c = .Find(11, , xlValues, xlWhole)
If Not c Is Nothing Then
Adr = c.Address
Do
Cells(c.Row, "F") = 11
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> Adr
End If
End With
End Sub

==============================================================================================


Sub dort()
Range("D2").Select
ActiveWorkbook.Worksheets("AS400").ListObjects("Tablo_AS400_").Sort.SortFields. _
Clear
ActiveWorkbook.Worksheets("AS400").ListObjects("Tablo_AS400_").Sort.SortFields. _
Add Key:=Range("D2"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("AS400").ListObjects("Tablo_AS400_").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("C2").Select
ActiveWorkbook.Worksheets("AS400").ListObjects("Tablo_AS400_").Sort.SortFields. _
Clear
ActiveWorkbook.Worksheets("AS400").ListObjects("Tablo_AS400_").Sort.SortFields. _
Add Key:=Range("C2"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("AS400").ListObjects("Tablo_AS400_").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub


===============================================================================================




Sub bes()
Sheets("STOK").Range("A3:Z65536").ClearContents
a = Sheets("AS400").Cells(65536, 3).End(xlUp).Row + 1
Sheets("STOK").Range("a3:f" & a).Value = Sheets("AS400").Range("c2:h" & a).Value
Sheets("STOK").Select
End Sub


===============================================================================================
 
Merhaba

Soru-cevap şeklinde hepimiz siteden çok şey öğreniyoruz.
Ancak bir çok konu ve soru, daha önceden belkide onlarca kez işlenmiştir.
Zahmet edip araştırınız.
 
Merhaba uzman bey,
Günaygın Hayırlı sabahlar.
İlgi ve alakanıza gönülden teşekkür ederim. Çoğu zaman konu açmadan önce göz atıyorum. Bana uygun bir konu daha varmı? diye. Konulara göz attım evet bu araştırmalarım neticesinde bana uygun birşey bulamayınca yeni konu açmak istedim. Belkide ben bulamadım olurya hani.

Arkadaşlar bu konuyu nasıl çözüme götürebilirim, Fikirleriniz nelerdir. Çünkü Kodları sırasyla birleştirdikten sonra, Hızlı çalışması da önemli.
 
.

Kod:
Sub Toplu()

Call bir
Call iki
Call uc
Call dort
Call bes

End Sub


.

şeklinde deneyin.
 
Merhaba,
sayın yurttaş verdiğiniz kodu kullanıyorum istediğim gibi ancak ben bu işlemlerin hızlı olmasını istıyorum
Yaklaşık 3 dk içinde bitiriyor.
Bu kodları, bir kod gibi olduğunu varsayalım. arka arkaya bu işlemi yapsa, herhalde fark olur.
yani ne kadar kısa sürede yaparsa benim için o kadar önemli.

Başka fikri olan arkadaşlarımız da varsa yorumlarını görmek isterim.
 
Geri
Üst