• DİKKAT

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

bu dongu nasil hizlandirilir?

  • Konbuyu başlatan Konbuyu başlatan etobus
  • Başlangıç tarihi Başlangıç tarihi
Katılım
14 Nisan 2006
Mesajlar
71
temp1 = 10
temp2 = 7
temp3 = 20
For X = (temp1 - 5) To (temp1 + temp3 - 6)

Worksheets("Test").Range("A" & temp2).Value = Worksheets("Data").Range("C" & temp1).Value
Worksheets("Test").Range("B" & temp2).Value = Worksheets("Data").Range("D" & temp1).Value
Worksheets("Test").Range("C" & temp2).Value = Worksheets("Data").Range("E" & temp1).Value
Worksheets("Test").Range("D" & temp2).Value = Worksheets("Data").Range("F" & temp1).Value

Boyle bir dongu var bu sadece A, B, C, D degil daah AK ya kadar devam ediyor.
Dolayisiyla cok yavas calisiyor. Tek tek her satiri girdigi icin
Ornegin Clear icin soyle bir sey kullaniyorum acaba aynisi burada da mumkun olur mu?

Worksheets("ATN").Range("A7:AG250").Clear


cok gusel A sutunundan AG nin 250. satirina kadar tum hucreleri temizliyor.

Yukaridaki durumda hizlandirmak icin su tarz bisey mi yazmaliyim :

Worksheets("Test").Range("A:AG" & temp2).Value = Worksheets("Data").Range("C:AI" & temp1).Value

Ama bu sekilde calismiyor,

ne önerirsiniz?
 
Selamlar,

Döngünüzde X değerini hiç kullanmamışsınız. Ayrıca hangi hücrelere tam olarak ne yapmak istediğinizi yazarsanız yardımcı olmak isteyen arkadaşlarımıza da kolaylık olur. :arkadas:
 
COST_CONTROL' Alıntı:
Selamlar,

Döngünüzde X değerini hiç kullanmamışsınız. Ayrıca hangi hücrelere tam olarak ne yapmak istediğinizi yazarsanız yardımcı olmak isteyen arkadaşlarımıza da kolaylık olur. :arkadas:
X'i kullanmadim Xin oradaki tek esprisi 10 kere o islemi tekrarlasin diye,

orada bir nokta daha var
temp2 ve temp1 her donmede bir artiyor, dongunun sonunda soyle yazdim
temp2 = temp2 + 1
temp1 = temp1 + 1

maksadim bir yerden bir yere kopyalama yapmak faat bu sekilde olmak zorunda dongu halinde
 
Selamlar,

Kopyalamak istediğiniz hücre aralığını belirtirseniz yada en iyisi konuyla ilgili küçük bir örnek dosya ekleyin üzerinden gidelim daha sağlıklı olur.
 
etobus amacınız bir taraftanda öğrenmekse sn.Cost Control'ün dediği kopyalama işini yapmak için makro kaydediciden faydalanabilirsiniz. Kopyalanacak bir satırdaki tüm hücreleri komple seçip öbür sayfada kopyalamanın başlayacağı ilk hücreyi seçip copy paste special values/özel yapıştır değerler yapıp kodu inceleyin. sanırım hüce referanslarını değiştirmeyi biliyorsunuz fazla sorun yaşamadan yapabilirsiniz belki ve bir daha unutmazsınız.
 
Dediginiz gibi yaptim yani hucre hucre kopyalamaktansa satir satir kopyalarak yazdim fakat soyle bir sorun var.

Worksheets("Data").Range("C" & temp1).Select
Worksheets("Data").Range(Selection, Selection.End(xlToRight)).Select


Ben C sutunundan ve 7. satirdan o satirin sonuna kadar kopyalama yapicam yani bir dongu seklinde ardindanda C sutunu 8. satir, vb..

Dongude sorunum yok fakar Bu End(xlToRight) o satirin sonuna kadar secim yapmiyor. Sadece E sutununa kadar oln kismini kopalyor satirlarin.
Dolayisiyla E sutunundan sonraki degerleri kopyalamiyor.

Ne yapmaliyim?
 
Örnek bir dosya eklermisiniz. Yapmak istediğinizin önceki ve makro çalıştırdıktan sonraki halini belirtirseniz ona göre yardımcı olmaya çalışalım. :arkadas:
 
COST_CONTROL' Alıntı:
Örnek bir dosya eklermisiniz. Yapmak istediğinizin önceki ve makro çalıştırdıktan sonraki halini belirtirseniz ona göre yardımcı olmaya çalışalım. :arkadas:

merhaba, dosyayi ekledim. cevabinizi bekliyorum icin cok onemli
 
COST_CONTROL' Alıntı:
Örnek bir dosya eklermisiniz. Yapmak istediğinizin önceki ve makro çalıştırdıktan sonraki halini belirtirseniz ona göre yardımcı olmaya çalışalım. :arkadas:
bakabildiniz mi acaba?
 
etobus' Alıntı:
COST_CONTROL' Alıntı:
Örnek bir dosya eklermisiniz. Yapmak istediğinizin önceki ve makro çalıştırdıktan sonraki halini belirtirseniz ona göre yardımcı olmaya çalışalım. :arkadas:

merhaba, dosyayi ekledim. cevabinizi bekliyorum icin cok onemli


Sebebini anladim

Worksheets("Data").Range(Selection, Selection.End(xlToRight)).Select

Bu islem suna karsilik geliyor. Data sayfasinda sectigin noktadan CTRL tusu ile sag kadar gittiginizde geldigi yeri seciyor. Ama bunu nasil duzelticem?
 
Selamlar,

Ekteki örnek dosyayı inceleyiniz. Filtreleme yöntemiyle aktarım işlemi yapılmaktadır.
 
Geri
Üst