• DİKKAT

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

Eşittir ve parentez

Katılım
4 Haziran 2008
Mesajlar
798
Excel Vers. ve Dili
Excel 2021 TÜRKÇE
Eşittir ve parantez işaretini nasıl koyabiliriz? Dosya ektedir.yardımlarınız için şimdiden teşekkür ederim.....:)
 

Ekli dosyalar

bu işlemi bul değiştir şeklinde yapabilirsiniz. ctrl h yapıp aranan değere EĞER(SATIRSAY yeni değere ise =EĞER(SATIRSAY yaparsanız tüm formüller çalışacaktır.
 
Aşağıdaki kodlar , hücrelerin başına = işareti koyuyor , ancak sadece en son hücreyi dizi formüle çeviriyor.Neden diğer hücrelerde bu işlemi yapmadığını bende anlamadım. :???::kafa::dusun: Uzmanlarımızın bi el atması lazım sanırım.

Kod:
Sub aa()
Dim i, j ,ss As Integer
i = [a65536].End(3).Row
For j = i To 2 Step -1
Cells(j, 1).Select
deger = Cells(j, 1)
ss = Len(deger)
With Selection
.Characters(.Characters.Count - ss).Insert ("=" & deger)
End With
 
Application.SendKeys "{F2}"
Application.SendKeys "^+{ENTER}"
Next j
End Sub
 
merhaba

bunu eneyiniz
Kod:
Sub aa()
Dim i, j, ss As Integer
i = [a65536].End(3).Row
For j = i To 2 Step -1
Cells(j, 1).Select
deger = Cells(j, 1)
ss = Len(deger)
With Selection
.Characters(.Characters.Count - ss).Insert ("=" & deger)
End With

[COLOR="Blue"]DoEvents[/COLOR]
Application.SendKeys "{F2}"
Application.SendKeys "^+{ENTER}"
Next j
End Sub

Sorun, döngünün F2+enter işleminden çok daha hızlı çalışmasındandır.
Kaynak: Levent bey
 
Süleyman bey , selamlar , geçmiş bayramınızı bu vesileyle kutlamak isterim.Gerçekten de Do Events sihirli bir komutmuş , tam 4 saatimi yedi :) , Do Events tam olarak ne yapıyor , döngüye anlık aramı veriyor?
 
bu işlemi bul değiştir şeklinde yapabilirsiniz. Ctrl h yapıp aranan değere eğer(satırsay yeni değere ise =eğer(satırsay yaparsanız tüm formüller çalışacaktır.

başına ve sonuna { } parantez işareti olmuyor.
 
sayın mesuttasar satırın başına = işareti var fakat en başında ve en sonunda {} parantez işareti yok.:)

Sayın uzmanemele'nin düzelttiği satırı görmediniz sanırım. 4 numaralı mesajdaki kodları denermisiniz . DoEvents satırını ekleyince kodlar doğru olarak çalışıyor.
 
Son düzenleme:
teşekkürler işlem tamam.
ufak bi değişiklik formüller alt alta değilde yan yana olsa nasıl bi makro olabilir? Şimdiden teşekkür ederim....

Formüllerin 2 Nolu satırda olduğunu kabul edersek kodların şöyle olması gerekir.

Kod:
Sub formul_yatay()
Dim i, j ,ss As Integer
i = Cells(2, 256).End(xlToLeft).Column
   For j = i To 1 Step -1
      Cells(2, j).Select
      deger = Cells(2, j)
      ss = Len(deger)
      With Selection
      .Characters(.Characters.Count - ss).Insert ("=" & deger)
      End With
      [COLOR=#0000ff]DoEvents[/COLOR]
 
      Application.SendKeys "{F2}"
      Application.SendKeys "^+{ENTER}"
   Next j
End Sub
 
Formüllerin 2 Nolu satırda olduğunu kabul edersek kodların şöyle olması gerekir.

Kod:
Sub formul_yatay()
Dim i, j ,ss As Integer
i = Cells(2, 256).End(xlToLeft).Column
   For j = i To 1 Step -1
      Cells(2, j).Select
      deger = Cells(2, j)
      ss = Len(deger)
      With Selection
      .Characters(.Characters.Count - ss).Insert ("=" & deger)
      End With
      [COLOR=#0000ff]DoEvents[/COLOR]
 
      Application.SendKeys "{F2}"
      Application.SendKeys "^+{ENTER}"
   Next j
End Sub

sayın mesuttasar satırların başına = işareti oluyor fakat {} parantez işaretleri gelmiyor.burada 300 tane formül var ve ben bunları 6. ncı satıra ve 9.uncu sütuna yapmak istiyorum böyle olacak şekilde yapabilirmisiniz?
dosya ektedir.
şimdiden teşekkürler...
 

Ekli dosyalar

Merhaba,

Öğrenmek için soruyorum;

Siz bu işlemi ne için kullanıyorsunuz. Yani formülleriniz neden bu şekilde ?

Sakıncası yoksa, konunun başlangıç aşamasını da açıklayabilirmisiniz.

.
 
Merhaba,

Öğrenmek için soruyorum;

Siz bu işlemi ne için kullanıyorsunuz. Yani formülleriniz neden bu şekilde ?

Sakıncası yoksa, konunun başlangıç aşamasını da açıklayabilirmisiniz.

.
sayın ömer kendime göre 300 günlük bir veri listesi yapıyorum ve bunlardan farklı farklı formüllerden 12 veya 13 tane var yani çarparsak 5000 dolayında oluyor zaman zaman listemdeki dikey de bulunan verilerin sayısı değiştiği için formülleride değiştirmek gerekiyor formülleri yeniden yazarak kopyalayabiliyorum.fakat = ctrl+shift+enter a basarak {} parantez içine alarak tek tek aktif hala getirmek zaman alıyor.Umarım açıklayabilmişimdir.:)
 
Kopyalamaktan kastınız nedir?

Eğer formüller hücreye göre ilerliyorsa, ilk hücredeki formülü dizi formülüne çevirip alt satırlara sürükleyerek kopyalamanız yeterli olacaktır. Tek tek içine girip diziye çevirmenize gerek yok. İlk formül dizi olursa ve bu formülü kopyalarsanız diğer formüllerde aynı özellikte olacaktır.

Yada konuyu benmi yanlış anladım.

Yanlış anlasamda bana göre bu yaptığınız işin daha kolay ve doğru yolu vardır. Yalnız konuyu tam olarak hala anlayamadım maalesef.

.
 
Kopyalamaktan kastınız nedir?

Eğer formüller hücreye göre ilerliyorsa, ilk hücredeki formülü dizi formülüne çevirip alt satırlara sürükleyerek kopyalamanız yeterli olacaktır. Tek tek içine girip diziye çevirmenize gerek yok. İlk formül dizi olursa ve bu formülü kopyalarsanız diğer formüllerde aynı özellikte olacaktır.

Yada konuyu benmi yanlış anladım.

Yanlış anlasamda bana göre bu yaptığınız işin daha kolay ve doğru yolu vardır. Yalnız konuyu tam olarak hala anlayamadım maalesef.

.

14 nolu mesajdaki dosyadaki formülleri elle = ctrl+shift+enter girerek başı ve sonunu {} parantez olacak şekilde aktif hale getirebiliyorum.benim isteğim bu işlemi makroyla yapabilmek. uzman amelenin verdiği kodla dikey olanları yapabiliyorum fakat benim isteğim yatay olanlarıda makroyla yapabilmek.
 
sayın mesuttasar satırların başına = işareti oluyor fakat {} parantez işaretleri gelmiyor.burada 300 tane formül var ve ben bunları 6. ncı satıra ve 9.uncu sütuna yapmak istiyorum böyle olacak şekilde yapabilirmisiniz?
dosya ektedir.
şimdiden teşekkürler...

6. Satırda bulunan formüller için dosya ektedir.
Düzeltilen kodların son şekli şu şekildedir.

Kod:
Sub formul_yatay()
Dim i, j, ss As Integer
i = Cells(6, 13000).End(xlToLeft).Column
MsgBox i
   For j = i To 9 Step -1
      Cells(6, j).Select
      deger = Cells(6, j)
      ss = Len(deger)
      With Selection
      .Characters(.Characters.Count - ss).Insert ("=" & deger)
      End With
      DoEvents
       Application.SendKeys "{F2}"
      Application.SendKeys "^+{ENTER}"
   Next j
End Sub


9 . sütun için ise 4 nolu mesajda verilen kodları kullanabilirsiniz. Ancak
Kod:
i = [a65536].End(3).Row
yerine
Kod:
i = [I65536].End(3).Row
yazmayı unutmayınız.
 

Ekli dosyalar

sayın mesuttasar işlem tamam.ilginize teşekkür ederim...
 
Geri
Üst