Mancata corrispondenza del tipo errore 13 in fase di esecuzione in Excel Visual Basic: correzione
Durante l’esecuzione dei codici Visual Basic in un foglio di calcolo Excel, potresti aver riscontrato questo messaggio ” Errore di runtime 13. Tipo non corrispondente “. Il modulo dell’applicazione Visual Basic ti aiuta a migliorare il tuo foglio di lavoro. Ma, proprio come altri codici, anche i codici Visual Basic possono presentare errori di runtime ed è abbastanza normale. Segui queste serie di soluzioni sul tuo computer per correggere questo errore di Visual Basic sul tuo sistema.
Correzione 1: verificare il tipo di valore
La maggior parte degli utenti che riscontrano questo errore di mancata corrispondenza del tipo lo ottengono a causa del tipo errato di valore dichiarato nel codice.
Passaggio 1 : mentre ti trovi nel file Excel, vai alla scheda ” Sviluppatore “.
Passaggio 2: successivamente, fare clic su ” Visual Basic ” per caricare il codice Visual Basic per il foglio di lavoro.
In alternativa, puoi toccare il pulsante ” Debug ” nel prompt Errore di runtime .
Passaggio 3: quando si apre l’applicazione Visual Basic, controlla chiaramente il codice nel riquadro di destra.
Passaggio 4: controllare i tipi di variabile dichiarati nel codice.
[Esempio –
Sub Excel_MisMatch
Dim k come numero intero
k = “TGP”
MsgBox k
Fine sott
Come puoi vedere, qui k è dichiarato come numero intero. Il valore intero accetta qualsiasi valore compreso tra -2.147.483.647 e 2.147.483.647 . Ma, nella riga successiva del codice, k è “TGP”, che è il tipo di dati sbagliato.
Modificando leggermente il codice dovresti risolvere il problema:
Sub Excel_MisMatch
Dim k come numero intero
k = “1”
MsgBox k
Fine sott
]
Successivamente, salva le modifiche ed esegui nuovamente il codice VB. Questa volta verrà eseguito senza errori di runtime.
Correzione 2: modifica il tipo di input
Il secondo motivo più importante è l’input errato durante l’esecuzione del codice Visual Basic.
È necessario assicurarsi che gli utenti del foglio di lavoro inseriscano il formato/tipo di dati corretto come input. Ad esempio, se hai progettato lo snippet di codice in questo modo:
Sub Excel_MisMatch
Dim k come stringa
Dim q Come intero
k = InputBox(“Inserisci le credenziali”)
q = InputBox(“Inserisci l’età”)
Ora devi assicurarti che l’utente non inserisca alcuna lettera per la variabile q poiché è un numero intero (non può accettare caratteri come input).
Correzione 3: utilizzare gli strumenti di debug VBA
Esiste uno strumento di debug VBA dedicato che puoi utilizzare per eseguire il debug del codice al suo interno.
Passaggio 1: in Microsoft Excel , premere contemporaneamente i tasti Win+F11 .
Passaggio 2: durante il caricamento del modulo Visual Basic, vedrai lo snippet di codice nel riquadro di destra.
Passaggio 3: quindi, fare clic una volta prima della chiave Sub.
Passaggio 4: successivamente, fare clic sullo strumento ” Debug ” e scegliere le operazioni Step (come Step into , Step Over , Step Out ) per eseguire il debug del codice.
Inoltre, è possibile utilizzare una procedura secondaria anche per eseguire il debug delle funzioni.
Passaggio 5 : ripeti la stessa cosa per tutte le righe di codice.
Rispetta il codice visual basic dal terminale e testalo.
Non riceverai l’errore di mancata corrispondenza del tipo nel pannello Visual Basic.
Fix 4 – Decalcare correttamente le operazioni
Un altro possibile motivo per cui si verifica questo tipo di errore di mancata corrispondenza è dovuto a operazioni non configurate correttamente utilizzate nel codice. Durante la codifica, non è possibile operare su altri due tipi di dati contemporaneamente.
Esempio –
Sub Excel_MisMatch
Dim k come numero intero
Dim q come stringa
k = “1”
q=”TGP”
MsgBox k*q
Fine sott
Poiché le variabili sono k, q sono due tipi di dati distinti (k è il numero intero, q è la stringa), quindi non è possibile utilizzare una funzione operatore su di esse. Quindi, controlla il codice Visual Basic ed elimina tutte le occorrenze discusse.
Lascia un commento