Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Er wordt naar een ongeldige objectvariabele verwezen. Deze fout kan om verschillende redenen optreden:
Een variabele is gedeclareerd zonder een type op te geven. Als een variabele wordt gedeclareerd zonder een type op te geven, wordt deze standaard getypt
Object.Een variabele die is gedeclareerd,
Dim xzou bijvoorbeeld van het typeObject;zijn waarmee een variabele isStringgedeclareerdDim x As String.Aanbeveling
De
Option Strictinstructie staat impliciet typen dat resulteert in eenObjecttype niet toe. Als u het type weglaat, treedt er een compilatietijdfout op. Zie de strikte instructie van optie.U probeert te verwijzen naar een object dat is ingesteld op
Nothing.U probeert toegang te krijgen tot een element van een matrixvariabele die niet juist is gedeclareerd.
Een matrix die als zodanig is gedeclareerd
products() As String, activeert bijvoorbeeld de fout als u probeert te verwijzen naar een element van de matrixproducts(3) = "Widget". De matrix heeft geen elementen en wordt behandeld als een object.U probeert code binnen een
With...End Withblok te openen voordat het blok is geïnitialiseerd. EenWith...End Withblok moet worden geïnitialiseerd door het invoerpunt van deWithinstructie uit te voeren.
Opmerking
In eerdere versies van Visual Basic of VBA is deze fout ook geactiveerd door een waarde toe te wijzen aan een variabele zonder het Set trefwoord (x = "name" in plaats van Set x = "name"). Het Set trefwoord is niet meer geldig in Visual Basic .Net.
Deze fout corrigeren
Ingesteld
Option StrictopOndoor de volgende code toe te voegen aan het begin van het bestand:Option Strict OnWanneer u het project uitvoert, wordt er een compilerfout weergegeven in de lijst met fouten voor een variabele die is opgegeven zonder een type.
Als u dit niet wilt inschakelen
Option Strict, zoekt u in uw code naar variabelen die zijn opgegeven zonder een type (Dim xin plaats vanDim x As String) en voegt u het beoogde type toe aan de declaratie.Zorg ervoor dat u niet verwijst naar een objectvariabele die is ingesteld op
Nothing. Zoek in uw code naar het trefwoordNothingen pas de code aan zodat het object pas is ingesteldNothingnadat u ernaar hebt verwezen.Zorg ervoor dat eventuele matrixvariabelen worden gedimensioneerd voordat u ze opent. U kunt een dimensie toewijzen wanneer u de matrix voor het eerst maakt (
Dim x(5) As Stringin plaats vanDim x() As String) of hetReDimtrefwoord gebruiken om de dimensies van de matrix in te stellen voordat u deze voor het eerst opent.Zorg ervoor dat uw
Withblok is geïnitialiseerd door het invoerpunt van deWithinstructie uit te voeren.