• DİKKAT

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

Hücredeki formülü belli aralıkta atlayarak kopyalayan formül

Katılım
25 Ocak 2006
Mesajlar
763
Excel Vers. ve Dili
2019 tr
W3 deki formülü 6 satır atlayarak w3 - w 1071 arasında (w9 - w15 ... w1071) formül olarak yapıştıracak bir kod yazılabilir mi? bunu seçenekli hale getirirsek eğer, örnek olarak a3 seçili olduğunda aynısını a3 den başlayarak b3 seçili ise b3 den başlayacak şekilde yapacak bir kod olabilir mi? teşekkürler...
 
Merhaba.
Bence sorunuz çok net değil. Sanıyorum 6 satırlık bir ritim ile belli bir sütundaki verileri listelemek istiyorsunuz.

Sorularınızı; gerçek belgenizin, özel bilgi içermeyen kopyası şeklinde hazırlayacağınız örnek belge üzerinden sorarsanız
daha hızlı ve net çözüme ulaşmanız kolaylaşır.
Ayrıca ekleyeceğiniz belgeye, olması gereken sonuçları, olması gereken hücrelere elle yazarak örneklendirip,
bu sonuçlara nasıl ulaştığınıza dair kısa ve net açıklama eklemeniz yerinde olur.

Örnek belge özellikleri ve örnek belge yükleme yöntemine ilişkin kısa açıklama cevabımın altındaki İMZA bölümünde var.
.
 
Merhaba.
Bence sorunuz çok net değil. Sanıyorum 6 satırlık bir ritim ile belli bir sütundaki verileri listelemek istiyorsunuz.
.

seçili hücreden itibaren aşağı doğru 6 satırlık bir ritim ile seçtiğin hücredeki formülün kopyalanmasını istiyorum. bunun için örnek dosya nasıl verebilirim bilemedim...
 
Soru çok afaki.
Gerçek belgenizin bir örneğini ekleyip, istediğiniz işlemdeki AMACI belirtirseniz mesafe kat etmeniz mümkün olabilir.
Örnek belge olmayınca verilecek cevaplar gereksiz yazışmalara neden olup, zaman kaybına neden olur ve sonuca ulaşılması da güçleşir.

Örneğin hep 3'üncü satırdan bahsetmişsiniz, başka seçenek yok mudur? başka satır seçildiğinde işlem yapılmayacak mıdır?
seçilen hücrede formül yoksa ne olacaktır, 1071 sayısı sabit midir? kopyalanmasını istediğiniz formüller aşağı doğru kopyalandığında sorunsuz çalışacak yapıda mıdır? vs.vs.

Belirttiğim gibi bu tür afaki sorularla sonuca ulaşmanız güç ama yine de bir cevap yazayım;
-- alt taraftan ilgili sayfanın adına fareyle sağ tıklayıp KOD GÖRÜNTÜLEyi seçin.
-- açılacak VBA ekranında sağdaki boş alana aşağıdaki kod blokunu yapıştırın.

Kod, seçilen hücre 3'üncü satırda ve formül içeriyorsa, aynı sütunda,
9'uncu satırdan başlayarak 6'satır atlamak suretiyle ilgili formülü aşağı doğru kopyalar.
Rich (BB code):
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row = 3 And Target.HasFormula = True Then
    For sat = 9 To 1071 Step 6
        Cells(3, Target.Column).Copy Cells(sat, Target.Column)
    Next
End If
End Sub
 
Alternatif;
Kod:
Sub FormulKopyala()
    xy = InputBox("Bir hücre referansı girin")
    x = Range("" & xy & "").Row
    y = Range("" & xy & "").Column
    For i = x To 30 Step 6
          Cells(x, y).Copy Cells(i, y)
    Next
End Sub
 
ömer bey, teşekkürler. yaptığınız oldu ama 3. satıra bastığımda her defasında işlem yapıyor.
hamitcan bey, tam istediğim gibi oldu. bana sadece son kopyalanacak yeri değiştirmek kaldı.
her ikinize de teşekkürler.
 
Alternatif;
Kod:
Sub FormulKopyala()
    xy = InputBox("Bir hücre referansı girin")
    x = Range("" & xy & "").Row
    y = Range("" & xy & "").Column
    For i = x To 30 Step 6
          Cells(x, y).Copy Cells(i, y)
    Next
End Sub
bu kodda cancel a basınca hata veriyor, bunu düzeltme şansı var mı. bir de son hüceyi otomatik belirlemek için ne yapılabilir. bir yerden referans bir yazı olabilir mi. belirli bir sütundaki toplam yazan son bir hücre aratarak mesela.
 
Son Hücreyi bulmak için forumda bir çok örnek mevcut. Ben bir tanesini paylaşıyorum.
Kod:
 sonhucre = [a1000000].end(3).row


Makroyu durdurmak için aşağıdaki çözümlere bakabilirsiniz.

https://www.excel.web.tr/threads/makro-calisirken-esc-tusu-ile-durdurmak.41990/

Excelde Çalışan Makroyu Durdurmak
Yayın Tarihi: 25 Ocak 2013, 15:14 Yazar: suleymantosun
Merhaba arkadaşlar,
Bu konuda yoğun olarak arama yapıldığını gördüğüm için kısaca belirtmek istedim. Excel dosyalarınızda özellikle makro güvenliklerine dikkat etmeniz gerekmektedir. Bazen farkında olmadan bir dosyanın açılışında yer alan makro kodları sebebiyle ciddi sıkıntılar yaşamanız mümkün olabilir.
Tüm bunları engellemek için öncelikle mutlaka güvenlik seviyenizle ilgili değişiklikleri yapın. Bunlara rağmen çalışan veya isteğinizle birlikte çalıştırdığınız makroları (loop söz konusu olmuşsa) durdurmak için Ctrl+Alt+Pause/Break tuşlarını birlikte kullanarak durdurmanız mümkündür, sonrasında kodun kaldığı noktadan itibaren makronun mevcut durumunu izlemek isterseniz bu durumda Debug seçeneği ile devam edebilirsiniz.
Süleyman TOSUN, PMP
 
Kod:
Sub FormulKopyala()
    xy = InputBox("başlangıç hücresini seç")
    sh = InputBox("son hücreyi seç")
    X = Range("" & xy & "").Row
    y = Range("" & xy & "").Column
    For i = X To sh Step 6
          Cells(X, y).Copy Cells(i, y)
    Next
End Sub

son hücreyi bu şekilde çözdüm.
 
Son düzenleme:
ömer bey, teşekkürler. yaptığınız oldu ama 3. satıra bastığımda her defasında işlem yapıyor.
........ teşekkürler.
Tekrar merhaba.
Verdiğim kod'un örneğin 3'üncü satırdaki hücreye fareyle çift tıkladığınızda çalışmasını isterseniz;
kod'un başlık satırını aşağıdaki satır ile değiştirebilirsiniz. Bu durumda; End Sub satırından önce Cancel=True şeklinde bir satır ekleyin.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 
Geri
Üst