Microsoft hesabıyla oturum açın
Oturum açın veya hesap oluşturun.
Merhaba,
Farklı bir hesap seçin.
Birden çok hesabınız var
Oturum açmak istediğiniz hesabı seçin.

Özet

Bu makale, çeşitli dizi türleriyle çalışmak için kullanabileceğiniz örnek Microsoft Visual Basic for Applications yordamlarını içerir.

Ek Bilgi

Microsoft, açık veya zımni garanti olmadan yalnızca çizim için programlama örnekleri sağlar. Bu, satılabilirlik veya belirli bir amaca uygunlukla ilgili zımni garantileri içerir ancak bunlarla sınırlı değildir. Bu makalede, gösterilmekte olan programlama dilini ve yordamları oluşturmak ve hatalarını ayıklamak için kullanılan araçları bildiğiniz varsayılır. Microsoft destek mühendisleri belirli bir yordamın işlevselliğini açıklamaya yardımcı olabilir, ancak özel gereksinimlerinizi karşılamak için ek işlevler sağlamak veya yordamlar oluşturmak için bu örnekleri değiştirmezler. NOT: Visual Basic for Applications yordamlarda kesme işaretinden sonraki sözcükler açıklamalardır.
 

Bir Diziyi Doldurmak ve Sonra Çalışma Sayfasına Kopyalamak için

  1. Yeni bir çalışma kitabı açın ve bir Visual Basic modül sayfası ekleyin.

  2. Modül sayfasına aşağıdaki kodu yazın.

    Sub Sheet_Fill_Array()
       Dim myarray As Variant
       myarray = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
       Range("a1:a10").Value = Application.Transpose(myarray)
    End Sub
    
  3. Sayfa1'i seçin.

  4. Araçlar menüsünde Makro'ya gidin ve Makrolar'a tıklayın.

  5. Makro iletişim kutusunda, Sheet_Fill_Array ve ardından Çalıştır'a tıklayın.

Çalışma Sayfasından Değer Almak ve Diziyi Doldurmak için

  1. A1:A10 hücrelerinde Sayfa1'deki değerleri yazın.

  2. Visual Basic modül sayfasında aşağıdaki kodu yazın:

    Sub from_sheet_make_array()
       Dim thisarray As Variant
       thisarray = Range("a1:a10").Value
    
       counter = 1                'looping structure to look at array
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter, 1)
          counter = counter + 1
       Wend
    End Sub
    
  3. Sayfa1'i seçin.

  4. Araçlar menüsünde Makro'ya gidin ve Makrolar'a tıklayın.

  5. Makro iletişim kutusunda from_sheet_make_array'e ve ardından Çalıştır'a tıklayın.

Dizi Geçirmek ve Almak için

  1. Modül sayfasında aşağıdaki kodu yazın:

    Sub pass_array()
       Dim thisarray As Variant
       thisarray = Selection.Value
       receive_array (thisarray)
    End Sub
    
    Sub receive_array(thisarray)
       counter = 1
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter, 1)
          counter = counter + 1
       Wend
    End Sub
    
  2. Sayfa1'i seçin ve A1:A10 aralığını vurgulayın.

  3. Araçlar menüsünde Makro'ya gidin ve Makrolar'a tıklayın.

  4. Makro iletişim kutusunda pass_array'e ve ardından Çalıştır'a tıklayın.

İki Diziyi Karşılaştırmak için

  1. Sayfa1'de iki adlandırılmış aralık oluşturun. Bir aralığı1 ve diğer aralığı2 olarak adlandırın.

    Örneğin, A1:A10 hücre aralığını vurgulayın ve aralığı1 olarak adlandırın; B1:B10 hücre aralığını vurgulayın ve range2 olarak adlandırın.

  2. Modül sayfasına aşağıdaki kodu yazın.

    Sub compare_two_array()
       Dim thisarray As Variant
       Dim thatarray As Variant
    
       thisarray = Range("range1").Value
       thatarray = Range("range2").Value
       counter = 1
       While counter <= UBound(thisarray)
          x = thisarray(counter, 1)
          y = thatarray(counter, 1)
          If x = y Then
             MsgBox "yes"
          Else MsgBox "no"
          End If
          counter = counter + 1
       Wend
    End Sub
    
  3. Sayfa2'yi seçin.

  4. Araçlar menüsünde Makro'ya gidin ve Makro'ya tıklayın.

  5. Makro iletişim kutusunda compare_two_array'e ve ardından Çalıştır'a tıklayın.

    Her karşılaştırma için bir ileti kutusu görürsünüz.

Dinamik Diziyi Doldurmak için

  1. Modül sayfasında aşağıdaki kodu yazın:

    Sub fill_array()
    
       Dim thisarray As Variant
       number_of_elements = 3     'number of elements in the array
    
       'must redim below to set size
       ReDim thisarray(1 To number_of_elements) As Integer
       'resizes this size of the array
       counter = 1
       fillmeup = 7
       For counter = 1 To number_of_elements
          thisarray(counter) = fillmeup
       Next counter
    
       counter = 1         'this loop shows what was filled in
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter)
          counter = counter + 1
       Wend
    
    End Sub
    
  2. Araçlar menüsünde Makro'ya gidin ve Makrolar'a tıklayın.

  3. Makro iletişim kutusunda, fill_array ve ardından Çalıştır'a tıklayın.

NOT: "number_of_elements" değişkeninin değiştirilmesi, dizinin boyutunu belirler.
 

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.

Bu bilgi yararlı oldu mu?

Dil kalitesinden ne kadar memnunsunuz?
Deneyiminizi ne etkiledi?
Gönder’e bastığınızda, geri bildiriminiz Microsoft ürün ve hizmetlerini geliştirmek için kullanılır. BT yöneticiniz bu verileri toplayabilecek. Gizlilik Bildirimi.

Geri bildiriminiz için teşekkürler!

×