• DİKKAT

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

Satır Yüksekliğini Gösteren Formül Var mı?

  • Konbuyu başlatan Konbuyu başlatan izcik
  • Başlangıç tarihi Başlangıç tarihi
Katılım
18 Mayıs 2009
Mesajlar
1,184
Excel Vers. ve Dili
Excel 2016 Türkçe
Merhabalar,

Örnek veriyorum,

A sütununda, binlerce satırdan oluşan bir excel sayfası var. Bu hücrelerin yani satırların, satır yüksekliğini kontrol etmek ve görüp kontrol ettikten sonra elle düzeltmek istiyorum.

(Hepsi 12,6 olması gerekirken bir başka satır (hücre), 25,1 olduysa, nedenini görmek istiyorum. Yanlışlıkla Alt enter mi yapılmış, veya metni kaydır mı yapılmış, bulup, görüp elle düzeltmek istiyorum.

(50-100 satır olsa gözle görülebilir ama binlerce satırda gözden kaçanlar olabilir. Formül, bizi doğru sonuca ulaştırır)

ihtiyacım olan, acaba B1 den başlayıp formül yazarak satır yüksekliklerini dökebiliyor muyuz?

(Makro da olur)

Teşekkürler.
 
Bu işlem için yerleşik fonksiyon bulunmuyor.

Aşağıdaki kullanıcı tanımlı fonksiyon işinize yarayabilir.

Satır sayısı fazla ise yavaşlık sorunu yaratabilir.

C++:
Option Explicit

Function ROW_HEIGHT(MY_CELL As Range) As Double
    Application.Volatile True
    ROW_HEIGHT = MY_CELL.RowHeight
End Function
 
Bu işlem için yerleşik fonksiyon bulunmuyor.

Aşağıdaki kullanıcı tanımlı fonksiyon işinize yarayabilir.

Satır sayısı fazla ise yavaşlık sorunu yaratabilir.

C++:
Option Explicit

Function ROW_HEIGHT(MY_CELL As Range) As Double
    Application.Volatile True
    ROW_HEIGHT = MY_CELL.RowHeight
End Function

Sayın Uzmanım harika, tek kelimeyle sorun çözen bir çözüm oldu

Teşekkür ederim

Arşivimde durması amacıyla
Sütunları gösteren kodları da yazar mısınız?

Teşekkürler
 
Sütunlar için deneyiniz.

C++:
Option Explicit

Function COLUMN_WIDTH(MY_CELL As Range) As Double
    Application.Volatile True
    COLUMN_WIDTH = MY_CELL.ColumnWidth
End Function
 
Teşekkürler, GET=AL yazamamışım =))

Ancak bu sefer de satır yüksekliği değişse dahi sonuç eski değerde kalıyor. Formülün yazıldığı hücreye girip çıkınca düzeliyor.
Sorun ne olabilir?
 
Satır yüksekliğini değiştirmek sayfada herhangi bir olayı tetiklemediği için hesaplama yapamıyor. Aynı durum renk değişimi içinde geçerlidir.

F9 tuşuna basarak sonuç vermesini sağlayabilirsiniz.

Ya da;

Aşağıdaki kodu BUÇALIŞMAKİTABI (ThisWorkbook) bölümüne uygularsanız bir hücreye tıkladığınızda hesaplama yapılacaktır.

C++:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    Calculate
End Sub
[/coce]
 
Sorun; Excel4 makrosuyla yazılan fonksiyonun "Volatile" olmamasından kaynaklanıyor.

Korhan Bey 5 No'lu mesajındaki kodda VBA ile hazırladığı fonksiyonda bu özelliği kullanmıştı..... O zaman, Excel4 fonksiyonu için, buna benzer bir kandırmaca yapmak lazım....

Örneğin; fonksiyon ile elde edilen satır yüksekliğini, sonucu sıfır olan bir işlemle toplayabiliriz. Böylece, sayfada herhangibir işlem gerçekleştiğinde, Excel4 fonksiyonuna "Volatile" özelliğini kazandırmış oluruz.

Kod:
=GET.CELL(17;Sheet1!A1)+0*RAND()

.
 
...herhangibir işlem gerçekleştiğinde...
Bu şekilde oluyor, teşekkürler.
Benim bu özellikle ilgili ısrarım, genelde soru soran arkadaşlara Excelin bu özelliği yok deniyor ve kodlara yönlendiriliyor. Böyle bir alternatifin olduğunu bilmeleri faydalı olacaktır.
 
Esasında GET.CELL kullanımı da bir makrodur. Farkı; VBA geliştirilmeden önce kullanılan eski makro tipi olmasıdır.

Yani; bu tür fonksiyonları kullanmak için yeni nesil Excel dosyalarını "*.xlsm" olarak kaydettiğinizde kullanabilirsiniz...

.
 
Güzel bilgilendirmelerin için teşekkürler Haluk Bey.
 
Geri
Üst