• DİKKAT

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

Makro da if formülü yapmak

Katılım
4 Mayıs 2007
Mesajlar
234
Excel Vers. ve Dili
office 2007 64 bit
office 2010 64 bit
sheet3 ü baz alarak bu formülü makroda nasıl yazabiliriz.
=IF($O$1=Sheet1!G5;Sheet1!C5;"")

eğer O1 eşitse Sheet1G5 e Sheet1!C5 i yaz eşit degilse boş bırak.
bu formülü makro ile yaparsak. buna makroda eklemek istediğim şey eğer eşitse Sheet!1C5 i copy yapıp Sheet3!B4 e pastelemesini ve Sheet1C5 i silmesini istiyorum
1- bunu yapmak mümkün mü?
2- eger Sheet1!G5 i silersek Sheet3 e pastelediklerimiz silinecek mi?
 
if

sheet3 ü baz alarak bu formülü makroda nasıl yazabiliriz.
=IF($O$1=Sheet1!G5;Sheet1!C5;"")

eğer O1 eşitse Sheet1G5 e Sheet1!C5 i yaz eşit degilse boş bırak.
bu formülü makro ile yaparsak. buna makroda eklemek istediğim şey eğer eşitse Sheet!1C5 i copy yapıp Sheet3!B4 e pastelemesini ve Sheet1C5 i silmesini istiyorum
1- bunu yapmak mümkün mü?
2- eger Sheet1!G5 i silersek Sheet3 e pastelediklerimiz silinecek mi?

şu kodu deneyebilirsin >>
Sub kontrol()
'eğer O1 eşitse Sheet1G5 e Sheet1!C5 i yaz eşit degilse boş bırak.
'bu formülü makro ile yaparsak. buna makroda eklemek istediğim şey eğer eşitse Sheet!1C5 i copy yapıp Sheet3!B4 e pastelemesini ve Sheet1C5 i silmesini istiyorum
If Sheets("sheet3").Range("o1") = Sheets("sheet1").Range("g5") Then
Sheets("sheet1").Range("c5").Copy
Sheets("sheet3").Range("b4").PasteSpecial xlPasteValues
Sheets("sheet1").Range("c5").ClearContents
End If
If Sheets("sheet3").Range("o1") <> Sheets("sheet1").Range("c5") Then
End If
End Sub
 
her&#351;ey &#231;ok harika oldu say&#305;n Emrexcel123 fakat bir noktada tak&#305;ld&#305;m diger h&#252;crelere de uygulamak istedim fakat arada iki tane bo&#351; h&#252;cre var sheet1c15 ve sheet1c26 onlar&#305;n kopyalanmas&#305;n&#305; istemiyorum bu defa sheet3 e koypalarken s&#305;ras&#305; bozuluyor ne yazmam gerekir ?

Sheets("sheet1").Range("c5:C36").Copy
Sheets("sheet3").Range("b4:B33").PasteSpecial xlPasteValues
 
herşey çok harika oldu sayın Emrexcel123 fakat bir noktada takıldım diger hücrelere de uygulamak istedim fakat arada iki tane boş hücre var sheet1c15 ve sheet1c26 onların kopyalanmasını istemiyorum bu defa sheet3 e koypalarken sırası bozuluyor ne yazmam gerekir ?

Sheets("sheet1").Range("c5:C36").Copy
Sheets("sheet3").Range("b4:B33").PasteSpecial xlPasteValues
arkadaşım zaten hücre boşta olsa sırayla kopyalayacaktır ancak verdiğin hüre aralığı koyalanan ve yapıştırılan hücre sayısı eşit olmadığı için hata verebilir bir örnek eklersen bakabiliriz...
 
Sayin emreexcel123 dosyayı ekledim haklısınız daha iyi olur böyle anlatmam
benim yapmaya çalıştıgımı göreceksiniz bir de yapamadıgım bir buton ekledim sheet1 e silme makrosunu o butona ekleyebilirmiyiz...
 
hücre

arkadaşım dosya ok de dediğin "O1" hücresi "g5" hücresine eşitliği çözemedim bir daha açıklayabilir misin?
 
say&#305;n emrexcel123
ben galiba ba&#351;ta yanl&#305;&#351; yazd&#305;m... &#351;imdi O1 de tarih var &#246;rnegin 11.05.2007 tarihi var sheet1 de G5 de e&#287;er 11.05.2007 tarihi varsa
buton t&#305;klad&#305;g&#305;mda sheet 3 deki B5 e g&#246;nderiyor gayet g&#252;zel &#231;al&#305;&#351;&#305;yor.
sheet1 de G kolonu benim tarihleri yazd&#305;&#287;&#305;m kolondur. G5 den
G36 ya kadar hepsinde tarih yazacak. &#246;rnegin sheet3 O1 de 11.05.2007 yaz&#305;yorsa G6 da 12.05.2007 yaz&#305;yorsa butona t&#305;klad&#305;g&#305;mda bunu atm&#305;yor bu da g&#252;zel &#231;al&#305;&#351;&#305;yor fakat bunu b&#252;t&#252;n tarihlerin yaz&#305;l&#305; oldu&#287;u G kolonuna nas&#305;l ekleye bilriz?
If Sheets("sheet3").Range("O1") = Sheets("sheet1").Range("G5")Then
Sheets("sheet1").Range("c5").Copy
Sheets("sheet3").Range("b5").PasteSpecial xlPasteValues
End If
If Sheets("sheet3").Range("O1") <> Sheets("sheet1").Range("G5") Then
End If
End Sub

yani bu form&#252;le eklemek istedi&#287;im &#351;ey e&#287;er sheet3 O1 deki tarih sheet1 G kolonundaki G5 den G36 ya kadar olan h&#252;crelerdeki tarih ile ayni ise o h&#252;creleri sheet1 den sheet3 e ats&#305;n.

&#246;rne&#287;in e&#287;er sheet3 O1 deki tarih sheet1 G6 daki tarihle ayni ise sheet1 c6 y&#305; sheet3 b6 ya ats&#305;n

&#231;&#252;nk&#252; bu form&#252;lde sadece G5 deki tarih dedik biz ondan olmuyor. G5 den G36 ya kadar dememiz laz&#305;md&#305; herhalde...
 
sayın emrexcel123

olur mu aceba öyle??
 
Son düzenleme:
daha doğrusu

If Sheets("sheet3").Range("O1") = Sheets("sheet1").Range("G5") Then
Sheets("sheet2").Range("J5:J36").ClearContents
Sheets("sheet1").Range("c5").Copy
Sheets("sheet3").Range("b5").PasteSpecial xlPasteValues
Sheets("sheet1").Range("H5").Copy
Sheets("sheet3").Range("E5").PasteSpecial xlPasteValues
Sheets("sheet1").Range("I5").Copy
Sheets("sheet3").Range("C5").PasteSpecial xlPasteValues
Sheets("sheet1").Range("J5").Copy
Sheets("sheet3").Range("D5").PasteSpecial xlPasteValues
Sheets("sheet1").Range("G5").Copy
Sheets("sheet3").Range("F5").PasteSpecial xlPasteValues
Sheets("sheet2").Range("O5").Copy
Sheets("sheet3").Range("K5").PasteSpecial xlPasteValues
Sheets("sheet1").Range("c5:J5").ClearContents

End If
If Sheets("sheet3").Range("O1") <> Sheets("sheet1").Range("G5") Then
End If
End Sub



bu formülü aşşagıdaki hücrelerde de çalışacak şekilde düzenlemek istiyorum
Sheet1
G5,G6,G7,G8,G9,G10,G11,G12,G13,G14
G16,G17,G18,G19,G20,G21,G22,G23,G24,G25
G27,G28,G29,G30,G31,G32,G33,G34,G35,G36
 
Son düzenleme:
If Sheets("sheet3").Range("O1") = Sheets("sheet1").Range("G5") Then
Sheets("sheet2").Range("J5:J36").ClearContents
Sheets("sheet1").Range("c5").Copy
Sheets("sheet3").Range("b5").PasteSpecial xlPasteValues
Sheets("sheet1").Range("H5").Copy
Sheets("sheet3").Range("E5").PasteSpecial xlPasteValues
Sheets("sheet1").Range("I5").Copy
Sheets("sheet3").Range("C5").PasteSpecial xlPasteValues
Sheets("sheet1").Range("J5").Copy
Sheets("sheet3").Range("D5").PasteSpecial xlPasteValues
Sheets("sheet1").Range("G5").Copy
Sheets("sheet3").Range("F5").PasteSpecial xlPasteValues
Sheets("sheet2").Range("O5").Copy
Sheets("sheet3").Range("K5").PasteSpecial xlPasteValues
Sheets("sheet1").Range("c5:J5").ClearContents

End If
If Sheets("sheet3").Range("O1") <> Sheets("sheet1").Range("G5") Then
End If
End Sub



bu formülü aşşagıdaki hücrelerde de çalışacak şekilde düzenlemek istiyorum
Sheet1
G5,G6,G7,G8,G9,G10,G11,G12,G13,G14
G16,G17,G18,G19,G20,G21,G22,G23,G24,G25
G27,G28,G29,G30,G31,G32,G33,G34,G35,G36

SORMAK İSTEDİĞİM ELSE İLE END İF ARASINDA FARK NEDİR?
 
sayılardan oluşan tabloda belirli değer aralıklarına isim verme

Arkadaşlar;
yapmak istediğim a sütununda;
41010010
41010020
41010030
41010040
.
.
.
41051530

aralığındaki sayılar varsa bir il adı vermek (adana) gibi bunun gibi
bu sayırlardan belki 20 il çıkacak bir bu formatta sayı değeri yardımcı olabilirmisiniz.
 
Soruyu tam anlamadım, il adını nereye vereceksiniz? Bu il adları nereden alacaksınız?
Örnekte Dsütununa bulunacak sayıları E sütununa bu sayılara karşılık gelecek illeri yazarsanız, A sütununda bu listeye uyan sayılar bulunup B sütunundaki hizasına karşılık gelen il ismi yazılır.
Kod:
Sub deneme()
'Arama yapılacak sütun
ara = "A"
'aranacak değerlerin olduğu sütun,
'bunun bir yan sütununda sayılara denk gelen il isimlerini yazmalısınız.
bul = "D"
sona = Range(ara & Rows.Count).End(xlUp).Row
sonb = Range(bul & Rows.Count).End(xlUp).Row
For x = 1 To sona
    For y = 1 To sonb
        If Range(ara & x) = Range(bul & y) Then Range(ara & x).Offset(0, 1) = Range(bul & y).Offset(0, 1)
    Next y
Next x
End Sub
 
Geri
Üst