• DİKKAT

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

DEPO TAKİP İÇİN MAKRO

Katılım
23 Ağustos 2022
Mesajlar
13
Excel Vers. ve Dili
office 2016
Merhabalar tek sayfada iki makro kullanacağım makrodan hücreyi değiştiriyorum ama hata veriyor yardımcı olabilcek varmı
 
Merhaba,

Mesajlarınızı daha açık yazmalısınız. Gerekiyorsa örnek dosya ile desteklemelisiniz. Böylece cevap almanız kolaylaşacaktır.
 
Makronuzu ya da her 2 makroyu da görürsek bir cevap verebiliriz.
 
Option Explicit
Sub Ekle()
Application.ScreenUpdating = False
Range("G3:G" & Cells(Rows.Count, 1).End(3).Row).Copy
Range("F3").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd
Range("G3").Resize(Rows.Count - 2).ClearContents
Range("A1").Select
Application.ScreenUpdating = True
End Sub



kullandığım makro bu

örnek dosya
örnek.xlsx - 14 KB
 
Öncelikle Resize komutunu yanlış kullanıyorsunuz.
Resize(SatırSayısı, SütunSayısı) formatında olmalı.

Siz kodlarınızı aşağıdaki şekilde kullanabilirsiniz
C++:
Option Explicit
Sub Ekle()
    Application.ScreenUpdating = False
    Range("G3:G" & Cells(Rows.Count, 1).End(3).Row).Copy
    Range("F3").PasteSpecial Paste:=xlPasteValues
    Range("G3:G" & Cells(Rows.Count, 1).End(3).Row).ClearContents
    Range("A1").Select
    Application.ScreenUpdating = True
End Sub
 
Verdiğim kodda F sütunuyla alakalı silme işlemi yapan bir satır yok.
 
Siz sorunuzda ve verdiğiniz kodlarda G sütununu G3 ten itibaren son kullandığınız satıra kadar kopyalayıp F sütununa yapıştırıyordunuz.

Yapmak istediğiniz işlem bu değilse sorunuzu yanlış ya da eksik soruyorsunuz. Doğru soruyu ben tahmin edemem, doğru tanımlamalısınız.
 
f sütunu rakamlarla dolu g sütununa girdiğim rakam veya sayılar f sütununa ilave edicek silmesini istemiyorum
 
Yani sorunuz aslında böyleymiş.
Aşağıdaki kodları kullanabilirsiniz.

Tek bir kodla iki sütunda da işlem yapabilirsiniz.
C++:
Sub EkleYeni()
    Dim Son As Integer, i As Integer, Liste, Veri As Variant
    Application.ScreenUpdating = False
    Son = Cells(Rows.Count, 1).End(3).Row
    Veri = Range("D3").Resize(Son - 2, 4).Value
    ReDim Liste(1 To UBound(Veri), 1 To 4)
    For i = 1 To UBound(Veri)
        If Veri(i, 2) > 0 Then
            Liste(i, 1) = Veri(i, 1) + Veri(i, 2)
        Else
            Liste(i, 1) = Veri(i, 1)
        End If
        If Veri(i, 4) > 0 Then
            Liste(i, 3) = Veri(i, 3) + Veri(i, 4)
        Else
            Liste(i, 3) = Veri(i, 3)
        End If
    Next i
    Range("D3").Resize(Son - 2, 4) = Liste
    Application.ScreenUpdating = True
End Sub
 
Geri
Üst