EXCEL VBA'DA ENVIRON FONKSİYONU

 

VBA'da, Environ işlevi ana işletim sistemindeki bir ortam değişkeninin değerini almak için kullanılır. Bir ortam değişkeni, çalışan işlemlerin bir bilgisayarda davranış biçimini etkileyebilen dinamik adlandırılmış bir değerdir. Environ işlevi, değerini almak istediğiniz ortam değişkeninin adı olan tek bir argüman alır. Aşağıdaki örneği ele alalım:


Excel VBA ORTAMI 1

Environ fonksiyonu, genellikle oturum açmış kullanıcının kullanıcı adını içeren “username” ortam değişkeninin değerini almak için kullanılır.

Burada, VBA Environ kullanıcı profilini bulmak için bir alt rutin oluşturulur. Kullanıcı Adının ortam değişkeni bulunur ve aşağıda gösterildiği gibi bir mesaj kutusunda görüntülenir.

Excel VBA ORTAMI 1-1

ÖNEMLİ NOKTALAR

  • VBA'daki Environ fonksiyonu, ana işletim sistemindeki bir ortam değişkeninin değerini almak için kullanılır.
  • İşletim sistemi sürümü veya şu anda oturum açmış kullanıcının kullanıcı adı gibi sistem hakkında bilgi almak için kullanılır.
  • İşlev belirtilen ortam değişkeninin değerini içeren bir dize döndürür. Ortam değişkeni yoksa boş bir dize döndürülür.
  • VBA kodunun çalıştığı ortam hakkında bilgiye ulaşmak için faydalıdır.
  • Ortam değişkenlerinin kullanılabilirliği ve davranışı farklı işletim sistemleri arasında farklılık gösterebilir.

Sözdizimi

VBA Ortam Değişkenleri listesini bulmanın sözdizimi gösterildiği gibidir.

Environ(environment-variable)

Nerede,

  • ortam değişkeni: Burada ortam değişkeni, değerini almak istediğiniz ortam değişkeninin adını temsil eden bir dize ifadesidir. İşlev, belirtilen ortam değişkeninin değerini içeren bir dize döndürür. Ortam değişkeni yoksa, boş bir dize döndürülür.

Çevre Değişkenleri Nasıl Görüntülenir?

Bu ortam değişkenlerini Windows Arama seçeneğinde arayarak sisteminizde görüntüleyebilirsiniz.

Çevre Değişkenleri Nasıl Görüntülenir 1
Çevre Değişkenleri Nasıl Görüntülenir 1-1.jpg

“Ortam Değişkenleri”ni seçin.

Çevre Değişkenleri 1-2 Nasıl Görüntülenir

VBA Environ fonksiyonunu kullanarak değerini gösterilen “Sistem Değişkenleri” ile bulabilirsiniz. Değerini döndürmek için VBA Environ fonksiyonundaki “Değişken” bölümüne dizeyi yazmanız yeterlidir. Bununla, VBA Değişkenleri listesi için değeri bulabilirsiniz.

VBA'da Environ Fonksiyonu Nasıl Kullanılır?

VBA Environ değişkenleri listesinin nasıl edinileceğini öğrenmek için aşağıdaki adımları izleyin. Burada, VBA Environ işlevi sisteminizde bulunan farklı ortam değişkenlerini edinmek için kullanılır.

Adım 1: Excel araç çubuğunda “Geliştirici” bölümünü seçin . Excel Çalışma Kitabını açtığınızda bunu görebilirsiniz.

VBA 1'de Environ Fonksiyonu Nasıl Kullanılır

Ardından, Geliştirici sekmesinde “Visual Basic”i seçin. Bu, VBA (Uygulamalar için Visual Basic) Düzenleyicisini açacaktır.

VBA 1-1'de Environ Fonksiyonu Nasıl Kullanılır

VBA Editöründe, VBA Araç Çubuğunda “Ekle”yi seçin. Ardından, açılır menüde “Modül”ü seçin.

VBA 1-2'de Environ Fonksiyonu Nasıl Kullanılır

Bu, kodlamaya başlayabileceğiniz yeni bir modül veya boş bir düzenleyici açar.

Adım 2: VBA Environ değişkenleri listesini bulmak için bir alt prosedür bildirin.

VBA 1-3'te Environ Fonksiyonu Nasıl Kullanılır

Adım 3: İlk ortam değişkeni değerini döndürmek için VBA Environ fonksiyonunu kullanın.

VBA 1-4'te Environ Fonksiyonu Nasıl Kullanılır

Environ işlevi bağlamında, bir dizin kullanmak (örneğin, Environ(1)) sayısal konumuna göre belirli bir ortam değişkeninin değerini alır. Ancak, Environ(1)'in özel anlamı tüm sistemlerde standartlaştırılmamıştır.

Adım 4: Benzer şekilde ikinci indekstekinin ortam değişkeni değerini bulun.

VBA 1-5'te Environ Fonksiyonu Nasıl Kullanılır

Adım 5: VBA Environ temp değişkenini bulun. Bu, tüm sistemlerde kullanılabilen bir ortam değişkenidir.

VBA 1-6'da Environ Fonksiyonu Nasıl Kullanılır

Adım 6: Sistemde bulunan bazı değişkenlerle VBA Environ fonksiyonunu çağırın.

VBA 1-7'de Environ Fonksiyonu Nasıl Kullanılır

Adım 7: Environ fonksiyonunu kullanarak program dosyalarının değerini bulun.

VBA 1-8'de Environ Fonksiyonu Nasıl Kullanılır

Kullanılabilir değişkenleri Windows sisteminizdeki ortam değişkenlerine bakarak bulabilirsiniz.

VBA 1-9'da Environ Fonksiyonu Nasıl Kullanılır

Adım 8: Benzer şekilde, sistemler arasında ortak olan diğer çevresel değişkenleri çağırın. Bunlardan biri "Yol" değişkenidir.

VBA 1-10'da Environ Fonksiyonu Nasıl Kullanılır

Adım 9: Farklı sistemlerde farklı değerlere sahip bir değişken çağırın. Bu, işlemci sayısını bulmak içindir.

VBA 1-11'de Environ Fonksiyonu Nasıl Kullanılır

Kod:

Sub ShowExamples()

    Debug.Print Environ(1) ‘ProgramData

    Debug.Print Environ(2) ‘AppData Roaming

    Debug.Print Environ(“Temp”)

    Debug.Print Environ(“ALLUSERSPROFILE”)

    Debug.Print Environ(“CommonProgramFiles”)

    Debug.Print Environ(“Path”)

    Debug.Print Environ(“NUMBER_OF_PROCESSORS”)

End Sub

Adım 10: “F5” tuşuna basarak veya Excel VBA araç çubuğundaki yeşil ok tuşuna tıklayarak alt prosedürü çalıştırın. Çıktı, gösterildiği gibi Hemen sekmesinde yazdırılacaktır.

VBA 1-12'de Environ Fonksiyonu Nasıl Kullanılır

Aşağıdaki örneklere bakarak VBA Environ fonksiyonunun nasıl kullanılacağına dair bazı ilginç örnekler görebilirsiniz.


Örnekler

Bu bölümde, aşağıdaki VBA Environ fonksiyonunu kullanmanın bazı yaratıcı yollarını inceleyebilirsiniz.

Örnek 1

Diyelim ki bölümdeki Ortam Değişkenleri kısmında arama yapmak yerine, tüm ortam değişkenlerinizi basit bir indeks numarasıyla görüntülemenin bir yolunu oluşturmak istiyorsunuz.

VBA Environ Örneği 1

Sütun başlığı verildiğinde, değerleri doldurmanız gerekir. Aşağıdaki adımları izleyerek VBA Environ işlevini kullanarak bunu yapabilirsiniz. Daha sonra, endeks numarası verildiğinde, hangi endeksin hangi değeri çağırdığı tahminini ortadan kaldırarak o endeksin değerini bulabilirsiniz. Not: Tüm bu değerler sisteminize bağlı olarak farklılık gösterebilir.

Adım 1: Sisteminizdeki tüm Ortam değişkeni değerlerini yazdırmak için bir alt rutin oluşturun. Daha sonra, VBA'daki giriş kutusu işlevini kullanarak bunu arayabilirsiniz .

VBA Çevre Örneği 1-1

Adım 2: Tekrarlayan bir değişken tanımlayın ve bunu FOR döngüsünde 50 kereden fazla çalıştırın (kaç tane ortam değişkeniniz olduğuna bağlı olarak).

VBA Çevre Örneği 1-2

Adım 3: FOR döngüsünde, ilk sütundaki indeks değerini verin. İkinci satırdan başlamak istediğiniz için, Cells fonksiyonunda tüm 'i' değerlerini 1 ile artırın.

VBA Çevre Örneği 1-3

Adım 4: VBA Environ fonksiyonunu çağırarak bu endekslerin değerlerini yazdırın ve Cells fonksiyonunu kullanarak ikinci sütuna yazdırın .

VBA Environ Örneği 1-4

Adım 5: Döngüyü sürdürün.

VBA Environ Örneği 1-5

Adım 6: Kullanıcıdan 1'den 48'e kadar sayılar arasında bir girdi değişkeni alın (bunun test edildiği sistemde yalnızca 48 değişken vardı).

VBA Environ Örneği 1-6

Adım 7: Güncel tarihi alın ve bir değişkende saklayın.

VBA Environ Örneği 1-7

Adım 8: Sonucu VBA Cells fonksiyonunu kullanarak bir değişkene atayın .

VBA Environ Örneği 1-8

Burada, başlıkları işlemek için tüm satırlara 1 eklendiğinden girdi bir artırılır.

Adım 9: Sonucu bir MsgBox fonksiyonunda yazdırın .

VBA Environ Örneği 1-9

vbInformation, MsgBox fonksiyonunda mavi “i” ikonunu yazdırmak için kullanılan değişken bir sabittir.

Kod:

Sub GetAllEnvVar()

    Dim i As Long

    For i = 1 To 50

        Cells(i + 1, 1).Value = i

        Cells(i + 1, 2).Value = Environ(i)

    Next i

    Dim inp As Integer

    inp = InputBox(“Enter the number (from 1 to 48) to view the Environment variable”)

    res = Cells(inp, 2).Value

    MsgBox “The environment value of ” & inp & ” is: ” & res

End Sub

Adım 10: “F5” tuşuna basarak veya Excel Çalışma Kitabına gidip “Geliştirici” bölümünün altında “Makrolar”ı seçerek alt rutini çalıştırın.

VBA Environ Örneği 1-10

Daha sonra çalıştırmak istediğiniz Makroyu seçip “Çalıştır”a tıklayın.

VBA Çıkış Alt Örneği 1-15

Bu, çalışma sayfasındaki değerleri yazdırır.

VBA Çıkış Alt Örneği 1-16

Ve gösterildiği gibi bir Giriş Kutusu açın. Değerini görmek istediğiniz sayıyı girin, ardından "Tamam"a tıklayın. Bu, 8. dizindeki ortam değişkeninin değerini yazdırır.

VBA Çıkış Alt Örneği 1-17
VBA Çıkış Alt Örneği 1-18

Örnek 2

Burada, bir düğmeye tıkladığımızda kullanıcı adı, sistem türü vb. gibi sisteminiz hakkında bilgi verecek bir Kullanıcı Formu oluşturmalıyız. Bu, ortam değişkenlerinin değerlerini bulan VBA Environ kullanılarak yapılabilir. Aşağıda açıklanan bunun nasıl yapılacağına dair adımları takip edebilirsiniz.

Adım 1: VBA Editöründe “Ekle”yi ve ardından “Kullanıcı Formu”nu seçin.

VBA Environ Örneği 2

Bu, aşağıda gösterildiği gibi boş bir kullanıcı formu oluşturacaktır.

VBA Çevre Örneği 2-1

Bu UserForm'u tercihlerinize göre özelleştirebilirsiniz. Kullanıcı formunun Başlığını değiştirin.

VBA Çevre Örneği 2-2

Adım 2: UserForm’a bir “Etiket” ekleyin ve özelliklerini özelleştirin.

VBA Environ Örneği 2-3
VBA Environ Örneği 2-4

Adım 3: Şimdi bir komut düğmesi ekleyin ve özelliklerini özelleştirin.

VBA Environ Örneği 2-5
VBA Environ Örneği 2-6

Özellikler'deki Yazı Tipi seçeneğinin yanındaki “…” öğesine tıklayarak yazı tiplerini ve görünümlerini değiştirin .

VBA Environ Örneği 2-7

Şimdi UserForm'un şu şekilde görünmesi gerekiyor.

VBA Environ Örneği 2-8

Adım 4: “Buraya Tıkla” düğmesine tıkladığınızda ne olacağını kodlamak için VBA Editörünü açmak üzere komut düğmesine çift tıklayın. Komut düğmesinin adıyla özel bir alt rutin oluşturur.

VBA Environ Örneği 2-9

Adım 5: “OS” değişkenini kullanarak işletim sisteminin Ortam değerini bulun.

VBA Environ Örneği 2-10

Adım 6: “username” değişkeniyle sistemin şu anda etkin olan kullanıcısını bulun. Environ işlevindeki değişkenlerin büyük/küçük harfe duyarlı olmadığını unutmayın.

VBA Environ Örneği 2-11

Adım 7: “NUMBER_OF_PROCESSORS” değişkenini kullanarak sisteminizdeki işlemci sayısını bulun.

VBA Environ Örneği 2-12

Adım 8: Tüm değerleri bir dize değişkeninde saklayın.

VBA Environ Örneği 2-13

VBA'daki vbCrLf sabiti, yeni satır karakter dizisini temsil etmek için kullanılır. Genellikle , çok satırlı metin oluşturmak veya çıktıyı satır sonlarını içerecek şekilde biçimlendirmek istediğinizde dizelere satır sonu veya satır başı eklemek için kullanılır .

Burada,

  • “vb” Visual Basic’i ifade eder.
  • “CrLf”, metin dosyalarında ve iletişim protokollerinde satır sonunu belirtmek ve imleci bir sonraki satırın başına taşımak için kullanılan kontrol karakterleri olan Satır Başı ve Satır Beslemesi anlamına gelir.

Adım 9: Bu mesaj dizesini bir MsgBox fonksiyonunda yazdırın. Burada, Mesaj Kutusu'ndaki "i" simgesi için vbInformation sabitini kullanın. Ayrıca, görüntülenmesini istediğiniz mesaj kutusunun başlığını yazın.

VBA Environ Örneği 2-14

Adım 10: Unload fonksiyonunu çağırarak UserForm’u kapatın .

VBA Çevre Örneği 2-15

Kod:

Private Sub CommandButton1_Click()

    Dim os As String

    os = Environ(“OS”)

    Dim username As String

    username = Environ(“USERNAME”)

    Dim no_of_processors As String

    no_of_processors = Environ(“NUMBER_OF_PROCESSORS”)

    Dim message As String

    message = “Operating System: ” & os & vbCrLf & _

              “Logged-in User: ” & username & vbCrLf & _

              “Number of processors in the system: ” & no_of_processors

    MsgBox message, vbInformation, “System Information”

    Unload UserForm1

End Sub

Adım 11: VBA Editörünün araç çubuğundaki yeşil oka tıklayarak UserForm'u çalıştırın. Sisteminizin bilgilerini görüntülemek için düğmeye tıklayın.

VBA Environ Örneği 2-16
VBA Environ Örneği 2-17

“Buraya Tıklayın” butonuna tıkladıktan sonra, sistem bilgilerinizi gösteren bir Mesaj Kutusu açılır penceresi göreceksiniz.

VBA Environ Örneği 2-18

Böylelikle sistem ayarlarınızı görüntülemek için bir UserForm başarıyla oluşturmuş oldunuz.

Dikkat Edilmesi Gereken Önemli Noktalar

  • Ortam değişkeninin varlığını doğrulamak için döndürülen dizenin uzunluğunu kontrol edin. Boş bir dize, değişkenin var olmadığını gösterir.
  • Ortam değişkeninin doğru ve büyük/küçük harfe duyarlı olmayan adını kullanın. Ortam değişkeni adları büyük/küçük harfe duyarlı değildir.
  • Ortam değişkenlerinin kullanılabilirliğinin ve davranışının farklı işletim sistemleri arasında değişebileceğini unutmayın. Kodunuzu hedef sistemlerde test edin.
  • Doğrulama yapmadan ortam değişkeni adlarını sabit kodlamaya çalışmayın. Değişken adları sistemler arasında farklılık gösterebilir ve sabit kodlama hatalara yol açabilir.
  • Environ fonksiyonuyla çalışırken VBA'da hata yönetimini göz ardı etmeyin .

Yorum Gönder

DT KARİYER KPSS Dünyasına Hoş Geldiniz
Sevgili dostum nasıl yardımcı olabilirim?
Bu alana yazınız...