Dinamik içeriğe yanıt olarak Excel hücre boyutunu otomatik güncelleme


0

Bağlam: Farklı kategoriler içeren açılır bir sayfam var. Sayfada, açılır menüden hangi kategorinin seçildiğine bağlı olarak bilgileri güncelleyen bir tablo da vardır. Kategorilerin bazıları, büyük hücreler gerektiren çok sayıda metin verirken, bazıları küçük hücrelere ihtiyaç duyan çok az miktarda metin içerir.

Aradığım: Aradığım şey, herhangi bir kategori için hücrede ne kadar metin olduğuna bağlı olarak hücre boyutunun otomatik olarak güncellenmesi. Bunu elle nasıl yapacağımı biliyorum.tüm sayfayı vurgulayarak ve otomatik sığdır'ı tıklatarak veya sütun veya satır bölücülerine çift tıklayarak. Ancak, aşağı açılır bir öğeyi seçtiğim anda bunun olmasını istiyorum. Bunun nedeni, farklı kişilerin bu sayfayı kullanacakları ve hücre boyutlarını el ile güncellemeleri gerekmediğini bilmedikleri takdirde, sayfanın küçük hücre boyutlarına ayarlandığı ve metnin belirli olduğu belli olmadığı için kritik bilgileri kaçırabilirler. kesildi. Tersine, eğer tabloyu varsayılan olarak çok büyük hücre boyutlarına ayarlarsam, o zaman sadece az miktarda metin üreten bir kategori seçildiğinde, tablo olması gerekenden çok daha büyük ve daha hantal olur.

Hücre boyutlarının, içindeki metin miktarı değiştiğinde otomatik olarak güncellenmesinin bir yolunu bilen var mı?

Teşekkür ederim!

Yanıtlar:


0

Bu sütundaki bir hücre değiştirildiğinde, sütun genişliğini güncellemek için bir makro yapın.

Hücreler, kullanıcı girişi veya formül yeniden hesaplaması nedeniyle değişir. Her değişiklik türünde farklı türde bir makro kullanırsınız. Aşağıdaki, C sütunundaki manuel girişler için tipik bir örnektir :

Aşağıdaki olay makrosunu çalışma sayfası kod alanına ekleyin:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("C:C")) Is Nothing Then Exit Sub
    Cells(1, "C").EntireColumn.AutoFit
End Sub

Çalışma sayfası kodu olduğu için kurulumu çok kolaydır ve kullanımı otomatiktir:

  1. Excel penceresinin altındaki sekme adını sağ tıklatın
  2. Kod Görüntüle'yi seçin - bu bir VBE penceresi getirir
  3. öğeleri yapıştırın ve VBE penceresini kapatın

Herhangi bir endişeniz varsa, önce bir deneme çalışma sayfasında deneyin.

Çalışma kitabını kaydederseniz, makro onunla birlikte kaydedilir. Daha sonra 2003'ten sonra bir Excel sürümü kullanıyorsanız, dosyayı .xlsx yerine .xlsm olarak kaydetmeniz gerekir.

Makroyu kaldırmak için:

  1. VBE pencerelerini yukarıdaki gibi açın
  2. kodu temizle
  3. VBE penceresini kapatın

Genel olarak makrolar hakkında daha fazla bilgi için bkz.

http://www.mvps.org/dmcritchie/excel/getstarted.htm

ve

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

Etkinlik Makroları (çalışma sayfası kodu) hakkında daha fazla bilgi için bkz.

http://www.mvps.org/dmcritchie/excel/event.htm

Bunun çalışması için makrolar etkinleştirilmelidir!


Teşekkürler, Gary'nin öğrencisi! Bu sütun boyutunu ayarlamak için çalıştı. Şimdi aynı şeyi satır yüksekliği için yapıp yapamayacağımı merak ediyorum. Formülünüzü ayarlamayı denedim ama tam olarak anlamadım. Bunun gibi bir şey olması gerektiğini hayal ediyorum:
KTG10

Private Sub Worksheet_Change (Aralık itibariyle ByVal Target) Kesişim (Hedef, Range ( "4: 4")) Eğer Sonra Alt Hücreleri çıkın Hiçbir şey mi (4, "b") EntireColumn.AutoFit End Sub.
KTG10
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.