AÖF Soru Bankası
YBS301U · Ünite 4

VBA ile Çalışma Kitaplarını Yönetmek

  • 20 soru-cevap
  • İşlem Tablosu Programlama
1

Excel VBA içerisinde çalışma sayfası nesnesi nedir?

Nesne Worksheet nesnesidir. 

2

Çalışma kitabı içindeki aktif sayfada, seçili hücrelerin yazı tipini kalın yapan kod nedir?

Selection.Font.Bold = True

3

Aşağıdaki kod örneğinde aktif çalışma kitabındaki aktif sayfanın seçili hücresine "Merhaba Dünya" yazdıran bir makro yazılmak istenmiştir ancak ___1____, ____2___, ____3___ şeklinde alanlara kod yazılmamıştır. Bu alanlara gelecek kodlar nelerdir?

1: ActiveWorkbook

2: ActiveSheet

3: ActiveCell

olmalıdır. 

4

Bir Excel VBA makrosu çalışırken, kullanıcıların ekranın sürekli güncellenmesi nedeniyle performans düşüklüğü yaşadığı fark edilmiştir. Bu sorunu çözmek için ne yaparsınız?

ScreenUpdating özelliğini kullanarak ekran güncellemelerini kapatabilirsiniz.

5

Bir Excel VBA makrosu çalışırken, kullanıcıların ekranın sürekli güncellenmesi nedeniyle performans düşüklüğü yaşadığı fark edilmiştir. Bunun önüne geçmek için aşağıdaki kod örneğini nasıl tamamlarsınız? (Boşluklara ne gelmesi gerekir?)

Sub VeriIslemi()
    ' Ekran güncellemelerini kapat
    Application.ScreenUpdating = _______

'     Veri işleme kodları
    For i = 1 To 1000
        Cells(i, 1).Value = i
   Next i

   ' Ekran güncellemelerini yeniden aç
    Application.ScreenUpdating = _______
End Sub

İlk boşluğa False

Sonraki boşluğa True

yazmak gerekir

6

Aşağıdaki örnekte,  bir hücre aralığındaki (örneğin "A1-A10") sayıların toplamını hesaplayarak "B1" hücresine yazdıran bir makro yazmanız isteniyor. ________ ile gösterilen eksik kısma ne gelmesi gerekir?

Sub ToplamHesapla()
    Dim toplam As Double
    toplam = Application.________("SUM(A1:A10)")
    Range("B1").Value = toplam
End Sub

Evaluate olması gerekir

7

Aşağıdaki kod örneğinde, ile Excel'de Kaydet komutunu çalıştıran (Ctrl + S tuş kombinasyonunu gönderen) bir makro yazılmıştır. _________ şeklinde boş bırakılan yere ne gelmelidir?

Sub KaydetTusu()
   ' Kaydet  için Ctrl + S tuş kombinasyonunu gönder
    Application.________ "^{__}"
End Sub

SendKeys komutu kullanılmalıdır. 

8

Aşağıdaki kod örneğinde , her gün saat "18:00:00"'da RaporGonder adlı prosedürü çalıştıran bir VBA makrosu yazılmıştır. Boş bırakılan ____1/2_____ kısımlara ne gelmelidir?

1: OnTime

2: RaporGonder

yazılması gerekir. 

9

Bir Excel VBA makrosu, belirli bir dosya yolunda bulunan bir çalışma kitabını açmalı, bazı değişiklikler yapmalı ve ardından çalışma kitabını yeni bir adla kaydetmelidir.Bunun için yhazılan kodda ____ şeklinde boş bırakılan yerlere ne gelmelidir? 

Sub CalismaKitabiAcKaydet()
   Dim wb As Workbook

   ' Çalışma kitabını aç
   Set wb = Workbooks.________("C:\Dosyalar\Ornek.xlsx")

   ' Değişiklikler yapılıyor (örneğin, A1 hücresine değer atama)
   wb.Sheets(1).Range("A1").Value = "Merhaba Dünya"

   ' Yeni adla kaydet
   wb.________ "C:\Dosyalar\Ornek_Yeni.xlsx"

   ' Çalışma kitabını kapat
   wb.Close SaveChanges:=False
End Sub

Yukarıdan aşağıya ilk boşluğa Open

Alttaki boşluğa SaveAs komutları gelmelidir. 

10

Aşağıdaki kod örneğinde  "C:\Dosyalar" klasöründeki tüm .xlsx dosya adlarını alıp Sheet1 sayfasında A sütununa listeleyen bir makro yazılmıştır. _________ Şeklinde boş bırakılan yere ne gelmelidir?

Boş bırakılan yere DosyaAdi gelmelidir. 

11

Aşağıdaki kod örneğinde, çalışma kitabı adı "Rapor.xlsx" olan dosyayı bulup, sayfanın ilk hücresine "Rapor Güncellendi" yazdıran ve ardından dosyayı kaydeden bir kod verilmiştir. Bu kodda eksik yerlere ne gelmelidir?

Sub CalismaKitabiKontrol()
   Dim wb As Workbook
   Dim bulundu As Boolean
   bulundu = False

   ' Açık olan çalışma kitaplarını kontrol et
   For Each wb In Workbooks
      If wb.________ = "Rapor.xlsx" Then
        bulundu = True

         ' Değişiklik yap
         wb.Sheets(1).Range("A1").Value = "Rapor Güncellendi"

          ' Çalışma kitabını kaydet
         wb.________

         Exit For
     End If
   Next wb

   ' Çalışma kitabı bulunamazsa mesaj ver
   If Not bulundu Then
       MsgBox "Rapor.xlsx çalışma kitabı açık değil."
   End If
End Sub

yukarıdan aşağıya ilk ______ alana Name

Aşağıdaki _____ alana save 

ifadeleri gelmelidir. 

12

Bir Excel VBA makrosunda, bir çalışma sayfasını kullanıcıların düzenlemesini önlemek amacıyla koruma altına almanız isteniyor. Bunun için hangi methodu kullanmak gerekir?

Protect metodunu kullanmak gerekir

13

Aşağıdaki kod örneğinde, "Sheet1" adlı sayfayı "1234" parolası ile koruma altına almak istenmektedir. _______ ile boş bırakılmış yere ne gelmelidir?

Sub SayfaKoruma()
   Dim ws As Worksheet
   Set ws = ThisWorkbook.Sheets("Sheet1")

   ' Sayfayı koruma altına al
   ws.________ "1234", UserInterfaceOnly:=True, _

AllowFormattingCells:=True
End Sub

Boş bırakılan yere Protect metodu konulmalıdır. 

14

Aşağıdaki kod örneğinde "Rapor" adlı sayfanın varlığını kontrol eden, varsa "A1" hücresine "Güncellendi" yazdıran, yoksa "Rapor" adında yeni bir sayfa ekleyen makro kodu yazılmıştır. Bu işi yapabilmek için ___Sayı____ şeklinde numaralarla boş bırakılan yerlere ne gelmelidir?

Sub SayfaKontrol()
   Dim ws As Worksheet
   Dim sayfaVar As Boolean
   sayfaVar = False

   ' Çalışma kitabındaki sayfaları kontrol et
   For Each ws In ThisWorkbook.___1_____
      If ws.____2____ = "Rapor" Then
        sayfaVar = True
        Exit For
    End If
   Next ws

   If sayfaVar Then
      ' Sayfa varsa güncelleme yap
      ws.Range("A1").Value = "Güncellendi"
   Else
     ' Sayfa yoksa yeni sayfa ekle
     Set ws = ThisWorkbook.Worksheets.____3____("Rapor")
  End If
End Sub

1 : Worksheet

2 : Name

3: Add

Olmalıdır

15

Worksheet ile sheet arasındaki fark nedir?

Worksheet, yalnızca çalışma kitabındaki çalışma sayfalarını ifade eder. Sheet, çalışma kitabındaki tüm sayfa türlerini ifade eder. Bu koleksiyonda çalışma sayfaları (Worksheet), grafik sayfaları (Chart), makro sayfaları gibi tüm sayfalar yer alabilir.

16

Aşağıdaki kod örneğinde, "Rapor" adlı sayfayı gizlemek ve "Özet" adlı sayfayı tekrar görünür yapmak için eksik olan ___1/2____ kısımlara ne gelmelidir?

Sub SayfaGizleGoster()
    Dim wsRapor As Worksheet
   Dim wsOzet As Worksheet

   ' Sayfa referanslarını ayarla
   Set wsRapor = ThisWorkbook.Sheets("Rapor")
   Set wsOzet = ThisWorkbook.Sheets("Özet")

   ' "Rapor" sayfasını gizle
   wsRapor.Visible = ___1____

   ' "Özet" sayfasını görünür yap
   wsOzet.Visible = ___2___
End Sub

1: xlSheetHidden

2: xlSheetVisible

olmalıdır.

17

Aşağıdaki kod örneğinde, "Rapor" adlı sayfayı gizlemek ve "Özet" adlı sayfayı tekrar görünür yapmak için bir kod vardır. Bu kodda hata/lar nerededir?

Sub SayfaGizleGoster()
   Dim wsRapor As Worksheet
   Dim wsOzet As Worksheet

   ' Sayfa referanslarını ayarla
   Set wsRapor = ThisWorkbook.Sheets("Rapor")
   Set wsOzet = ThisWorkbook.Sheets("Özet")

   ' "Rapor" sayfasını gizle
   wsRapor.Visible = True

   ' "Özet" sayfasını görünür yap
   wsOzet.Visible = False
End Sub

wsRapor.Visible = True yerine wsRapor.Visible =xlSheetVisible

wsRapor.Visible = Falseyerine wsRapor.Visible =xlSheetVeryHidden

kullanılmalı

18

Aşağıdaki kod örneğinde e "Veriler" adlı sayfayı yeni bir sayfa olarak kopyalayan ve "Analiz" sayfasının öncesine taşıyan bir makro verilmiştir. Bazı yerler ____1/2/3___ şeklinde boş bırakılmıştır. Bu boşluklara ne gelmesi gerekir?

Sub SayfaKopyalaTasi()
   Dim ws As Worksheet
   Set ws = ThisWorkbook.Sheets("Veriler")

   ' "Veriler" sayfasını kopyala
   ws.___1____

   ' "Veriler" sayfasını "Analiz" sayfasının öncesine taşı
   ws.__2___ ___3___:=ThisWorkbook.Sheets("Analiz")
End Sub

1: Copy

2: Move

3: Before 

olmalı

19

Copy metodunu başka bir çalışma kitabına ("YeniKitap.xlsx") 1. sayfa olmak üzere kopyalamak için ___________ şeklinde boş bırakılan yere gelmesi gereken kod ne olmalıdır?

Sub SayfaKopyali()
   Dim ws As Worksheet
   Set ws = ThisWorkbook.Sheets("Veriler")

   ' "Veriler" sayfasını kopyala
   ws.Copy

   ' "Veriler" sayfasını "YeniKitap.xlsx" 

   'çalışma kitabının ilk sayfasına kopyala
   __________________________________
End Sub

ws.Copy Before:=Workbooks("YeniKitap.xlsx").Sheets(1)

20

Aşağıda verilen kodun işlevi nedir? 

Kod bir çalışma kitabındaki sayfaları alfabetik sıraya göre sıralar.

Ünite 4 sorularını uygulamada çözBu ünitenin çıkmış ve deneme soruları, şıkları ve cevap açıklamaları uygulamada.Uygulamada aç