Excel çalışma kitabında sayfa adları listesi oluşturmak için VBA prosedürleri nasıl kullanılır?

Bir Excel çalışma kitabındaki tüm sayfaları listelemek için bu basit Microsoft Excel makrolarından birini veya her ikisini birden kullanın.

<a href = "https://www.techrepublic.com/a/hub/i/r/2019/06/21/942dc625-77e0-4933-b8ff-e00f11f28b4e/resize/770x/572e965fa563a05eec75947eb70a1ee2/istock-1129580722.jpg "target =" _ blank "data-component =" modalEnlargeImage "data-headline ="

"data-credit =" Resim: Aajan Getty Images / iStockphoto ">

Resim: Aajan Getty Images / iStockphoto

Microsoft Excel çalışma kitabınızda üç veya 50 sayfa olsun, neye sahip olduğunuzu bilmek önemlidir. Bazı karmaşık uygulamalar, sayfa adlarını içeren ayrıntılı belgeler gerektirir. Hızlı bir bakışın yeterince iyi olmadığı ve bir listenizin olması gereken zamanlar için birkaç seçeneğiniz vardır: Sıkıcı olacak ve her değişiklik yaptığınızda güncellenmesi gereken manuel rotaya gidebilirsiniz. Veya hızlı bir VBA prosedürü çalıştırabilirsiniz. Bu makalede, size sayfa adlarının ve köprülerin bir listesini oluşturan kolayca değiştirilmiş kodu göstereceğim. Liste oluşturmanın başka yolları da var, ancak VBA yöntemini tercih ediyorum çünkü otomatikleştirilmiş ve bireysel gereksinimlere uyacak şekilde değiştirilmesi kolay.

GÖRMEK: 69 Her kullanıcının ustalaşması gereken Excel ipuçları (TechRepublic)

kullanıyorum Microsoft 365 bir Windows 10 64 bit sistem, ancak daha önceki sürümleri kullanabilirsiniz. Zaman kazanma, .xlsx, .xls ve .cls dosyalarını indirin. Makrolar çevrimiçi sürüm tarafından desteklenmemektedir. Bu makale, temel Excel becerilerine sahip olduğunuzu ve VBA'ya aşina olduğunuzu varsayar, ancak yeni başlayanlar bile başarı için talimatları takip edebilmelidir.

VBA'da kod nasıl girilir ve çalıştırılır

VBA kodunda yeniyseniz, prosedür ve makro terimlerini merak ediyor olabilirsiniz. Kullanılan dil VBA olduğunda bunların birbirinin yerine kullanıldığını göreceksiniz. Bu tüm diller için geçerli değildir. VBA'da, hem prosedür hem de makro, çağrıldığında önceden oluşturulan adlandırılmış bir talimatlar kümesidir. Bazı geliştiriciler bir alt prosedürü makro olarak ve bir fonksiyon prosedürünü prosedür olarak adlandırır çünkü bir prosedür argümanları kabul edebilir. Birçoğu her şey için makro terimini kullanır. Bazıları, benim gibi, her şey için prosedür terimini kullanma eğilimindedir. Ayrıca, Access herhangi bir VBA kodundan ayrı bir makro özelliğine sahiptir. Koşullara fazla takılma.

GÖRMEK: Windows 10: Konuşma tanıma ve dikte için sesli komutların listesi (ücretsiz PDF) (TechRepublic)

VBA kodunu girmek için, Visual Basic Editor'ı açmak için Alt + F11 tuşlarına basın. Soldaki Proje Gezgini'nde ThisWorkbook'u seçin ve kodu girin. Bir şerit sürümü kullanıyorsanız, makroları kullanmak için dosyayı makro özellikli bir dosya olarak kaydetmeniz gerekir. Kodu içeren indirilebilir .cls dosyasını da içe aktarabilirsiniz. Veya indirilebilir Excel çalışma kitaplarından biriyle çalışabilirsiniz. Kodu kendiniz giriyorsanız, lütfen bu web sayfasından kopyalamayın. Bunun yerine, manuel olarak girin veya bir metin düzenleyiciye kopyalayın ve ardından bu kodu bir modüle yapıştırın.

VBE'deyken, bir prosedürü çalıştırmak için F5'e basın, ancak çalıştırmak istediğiniz prosedürün içini tıkladığınızdan emin olun. Bir Excel sayfasındayken, Geliştirici sekmesine tıklayın, Kod grubundaki Makrolar'a tıklayın, açılan iletişim kutusundaki prosedürü seçin. Şekil Ave ardından Çalıştır'a tıklayın.

Şekil A

<a href = "https://www.techrepublic.com/a/hub/i/2021/05/25/5775ccfc-29d1-4b38-8426-221bfdc8fff5/excellistsheets-a.jpg" target = "_ boş" veri- component = "modalEnlargeImage" data-headline = "

& nbsp; Geliştirici sekmesinden bir makro nasıl çalıştırılır.

"data-credit =" http://www.techrepublic.com/ ">excellistsheets-a.jpg "data-original =" https://www.techrepublic.com/a/hub/i/2021/05/25/5775ccfc-29d1-4b38-8426-221bfdc8fff5/excellistsheets-a.jpg

Geliştirici sekmesinden bir makro nasıl çalıştırılır.

Çıplak kemikler VBA kodu

Çalışma Sayfaları koleksiyonu sayesinde VBA kullanarak basit bir sayfa adları listesi oluşturmak kolaydır. Liste A bu koleksiyonda dolaşan basit bir For Each döngüsü gösterir. Her sayfa için kod, bu adı Sayfa1'de A1'den başlayarak A sütununa girmek için Ad özelliğini kullanır.

Liste A

Alt Liste Sayfası Adları ()

Tüm sayfa adlarını Sayfa1'in A sütununda listeleyin.

Listenin konumunu değiştirmek için güncelleyin.

E-Tablolar ("Sayfa1"). Etkinleştir

ActiveSheet.Cells (1, 1).

Sayfa1'deki çalışma kitabındaki her sayfaya bir köprü listesi oluşturun.

Çalışma Sayfalarındaki Her sh için

ActiveCell = sh.Name

ActiveCell.Offset (1, 0). 'Bir satır aşağı git' seçeneğini seçin.

Sonraki

Aboneliği Sonlandır

Bu kodu uyarlarken, listenin konumunu değiştirmek isteyebilirsiniz; bunu ilk iki satırı buna göre değiştirerek yapın. For Each döngüsü ayrıca değişiklik yapma olanakları sunar. Sayfa adlarını numaralandırmak için başlık adları veya değerler eklemek isteyebilirsiniz.

Bu kod, istemeyebileceğiniz gizli ve çok gizli sayfaları listeleyecektir. Bu durumda, xlSheetVisible ve xlSheetVeryHidden Visible özelliklerini kontrol etmeniz gerekir. Ek olarak, Sayfa1'de aktif olarak A1'i seçtiğimiz için, imleç o konuma hareket eder. Etkin hücrenin değişmesini istemiyorsanız, örtük seçim ifadeleri kullanın. Örtülü ve açık referanslar hakkında daha fazla bilgi edinmek için okuyun Excel ipuçları: VBA kullanarak hücreleri ve aralıkları verimli bir şekilde seçme.

Yapmak isteyebileceğiniz birçok değişiklik var. Örneğin, sıradan bir metin listesi yerine, bir köprü listesi isteyebilirsiniz.

Excel'de bir köprü listesi nasıl oluşturulur

Karmaşık bir çalışma kitabının çalışma kitabındaki her sayfaya bir köprü listesi içermesi alışılmadık bir durum değildir. Kullanacağınız prosedür, gösterilen Liste B, benzer Liste A, ancak bu kod bir köprü oluşturmak için Ad özelliğini kullanır.

Liste B

Sub ListSheetNamesAsHyperlinks ()

Sayfa1, A1'deki çalışma kitabındaki her sayfaya köprü listesi oluşturun.

E-Tablolar ("Sayfa1"). Etkinleştir

ActiveSheet.Cells (1, 1).

Sayfa1'deki çalışma kitabındaki her sayfaya bir köprü listesi oluşturun.

Çalışma Sayfalarındaki Her sh için

ActiveSheet.Hyperlinks.Add Çapa: = Seçim, _

Adres: = "http://www.techrepublic.com/", Alt Adres: = "http://www.techrepublic.com/" "& sh.Name &" http://www.techrepublic.com/ "" & "! A1", _

TextToDisplay: = sh.Name

ActiveCell.Offset (1, 0). 'Bir satır aşağı taşır' seçeneğini seçin

Sonraki

Aboneliği Sonlandır

İlk iki satır, Sayfa1'de A1 hücresini seçer. Listeyi yeniden konumlandırmak için bu iki ifadeyi güncelleyin. For Each döngüsü, her sayfa için bir köprü oluşturmak üzere Name özelliğini kullanarak tüm sayfalarda dolaşır.

For Each'deki Hyperlinks.Add özelliği, formu kullanır

Çapa Ekle, Adres, (Alt Adres), (Ekran İpucu), (Metin Ekranı)

Parametre bilgileri aşağıda listelenmiştir:

  • Çapa: Bir Aralık veya Şekil nesnesi.
  • Adres: Köprünün adresi.
  • SubAddress: Köprünün alt adresi
  • Ekran İpucu: Fare işaretçisi köprünün üzerinde durduğunda görüntülenen bilgiler.
  • TextToDisplay: Köprü metni.

Prosedürümüzün SubAddress bağımsız değişkeni

Alt Adres: = "http://www.techrepublic.com/" "& sh.Name &" http://www.techrepublic.com/ "" & "! A1"

geçerli sayfanın adını ve A1 hücre başvurusunu kullanarak bir dize oluşturur. Örneğin, geçerli sayfa Sayfa1 ise, bu 'Sayfa1'! A1 olarak değerlendirilir. Daha sonra, bu köprüyü tıkladığınızda, sizi Sayfa1'deki A1 hücresine götürür. Daha önce olduğu gibi, bu listeyi kullanmak istediğiniz yolu yansıtmak için bu prosedürü kolayca değiştirebilirsiniz.

Her iki alt prosedürün de kullanımı kolaydır. Her ikisi de listenin konumunu değiştirmek veya basit listeye daha fazla bilgi eklemek için kolayca değiştirilebilir.

Ayrıca bakın

Source link

İlk yorum yapan olun

Bir yanıt bırakın

E-posta hesabınız yayımlanmayacak.


*