Str()– Ədədi veriləni mətni verilənə çevriən funksiya. Val() – Mətni veriləni Double tipli ədədi verilənə çevriən funksiya. Bu daxili funksiyalar bir-birlərinin tərsidirlər. Strədədi mətnə, Val isə mətni ədədə çevirir. VBA proqramlaşdırmada ən zəruri funksiyalardan biridir. VBA proqramlaşdırmada ən çox istifadə olunur. Bu funksiyalardan istifadə edən proseduru araşdıraq.
Expressions.e_StrVal1 (ilkin kod) 1) Sub e_StrVal1()
2) Dim i As Integer, d As Double
3) Dim s As String
4) d = 123.12345
5) s = Str(d)
6) Debug.Print s ' res: "123.12345"
7) i = Val(s)
8) Debug.Print i ' res:123
9) d = Val(s)
10) Debug.Print d ' res:123,12345
11) End Sub
Analiz: 2-ci və 3-cü sətrlərdəi, d, s dəyişənləri tipləri göstərilməklə, açıq şəkildə elan etdik.
4-cü sətrdəd dəyişənini inisilizasiya etdik.
5-ci sətrdə Str funksiyası vasitəsilə Double tipli d dəyişəni qiymətinin tipini dəyişib, s mətni dəyişəninə mənimsətdik. Nəticəni, 6-cı sətrdə çap etdik.
7-ci sətrdə Val funksiyası vasitəsilə s mətni dəyişəninin qiymətini Double tipinə çevirərək, Integer tipli i dəyişəninə mənimsətdik. Integer tam ədəd tipi olduğu üçün i dəyişəni yalnız mənimsənilən ədədin tam hissəsini götürür. Nəticəni 8-ci sətrdə çap etdik.
9-cu sətrdə Val funksiyası vasitəsilə s mətni dəyişəninin qiymətini Double tipinə çevirərək, Double tipli d dəyişəninə mənimsətdik. Nəticəni 10-cu sətrdə çap etdik.
Bu prosedurda istifadə olunan bütün dəyişənlər əvvəlcədən tipləri göstərilməklə elan olunduqlarından nəticələr gözlədiyimiz kimi oldu. Elan olunmamış dəyişənlərdən istifadə zamanı tamamilə gözlənilməz nəticələr alına bilər
Asc() - ASCII kodlaşdırmasında simvolun kodunu qaytarır. Chr() - ASCII kodlaşdırmasında koda görə simvolu qaytarır. Asc və Chr daxili funksiyalar bir-birlərinin tərsidirlər. Bu daxili funksiyalar əsasən mətnlərin(axtarış, dəyişmə), obyektlərlə bağlı hadisələrin emalı zamanı istifadə olunur.