Pomoč LibreOfficeDev 7.6
Lastnost (angl. property), imenovana tudi polje ali atribut (angl. field, attribute), označuje dani predmet ali informacijo. Lastnosti lahko uporabimo za nadzor dostopa do podatkov. Pogosto jih uporabljamo za vključevanje ukazov ob času določanja ali branja lastnosti. Koda lahko zajema vse od enostavne dodelitve do kompleksnih podprogramov. Z uporabo dostopnikov Get, Let in Set po potrebi uveljavljamo konsistenco lastnosti.
Ta ukaz potrebuje Option Compatible, ki ga moramo vstaviti pred izvedljivo programsko kodo v modulu.
       
         [Private | Public] Property Get name[char | As typename]
         End Property
             
         [Private | Public] Property [Let | Set] name[char] [([Optional [ByRef | ByVal]]value[char | As typename])] [As typename]
         End Property
      ime: ime lastnosti.
Argument: vrednost, ki bo posredovana nastavljalcu Property.
Nastavljavci lastnosti Property pogosto uporabljajo en sam argument. Več argumentov sprejemajo enakovredno.
      Option Compatible
      Sub Main
          ProductName = "Office"
          Print ProductName ' izpiše "LibreOfficeDev"
      End Sub
      
      Private _office As String
      Property Get ProductName As String
          ProductName = _office
      End Property
      Property Let ProductName(value As String)
          _office = "Libre"& value
      End Property
      Če Property Let ali Property Set nista definirana, lahko Property Get določi zaščitene podatke, ki jih ni možno naključno spremeniti s tujim modulom:
      Option Compatible
      Public Property Get PathDelimiter As String ' Spremenljivka samo za branje
          Static this As String
          If this = "" Then : Select Case GetGuiType()
              Case 1 : this = ";" ' Windows
              Case 4 : this = ":" ' Linux ali macOS
              Case Else : Error 423 ' Lastnost ali metoda ni določena: PathDelimiter
          End Select : End If
          PathDelimiter = this
      End Property ' PathDelimiter samo za branje
      
      Sub Main
          PathDelimiter = "nek stavek" ' ne stori ničesar
      End Sub
      Če ravnate s storitvami ali razrednimi predmeti UNO, uporabite Let in Set:
      Option Compatible
      Sub Main
          'Set anObject = CreateUnoService( "com.sun.star.frame.Desktop" )
          anObject = CreateUnoService( "com.sun.star.frame.Desktop" )
          Print anObject.SupportedServiceNames(0) ' displays "com.sun.star.frame.Frame"
      End Sub
      
      Property Get anObject As Object
          Set anObject = _obj
      End Property
      
      Private _obj As Object
      
      'Property Set anObject(value As Object)
          'Set _obj = value.CurrentFrame
      'End Property
      Property Let anObject(value As Object)
          Set _obj = value.CurrentFrame
      End Property