› Sviluppare funzionalita su Microsoft Office con VBA › Errore su valore mimo
-
AutoreArticoli
-
Buongiorno a tutti
nell mio esempio confronto il valore minimo in cella A2 e il valore massimo in cella B2
La variabile da controllare è Gem0 nel mio esempio ho messo un numero fisso 4
Quindi se A2 -B2 sono vuote il risultato è Ok fin quì tutto bene
se A2 è minore di Gem0 e B2 è maggiore tutto ok
se a2 è vuota e b2 maggiore di Gem0 tutto ok
Ma se A2 è maggiore o minore di Gem0 e B2 è vuota da errore
Allego anche il mio esempio
Grazie a tutti
Allegati:
You must be logged in to view attached files.Onestamente non ho capito nulla. Ho provato a mettere un valore in cella "A2" e lasciare vuota la cella "B2" ma non mi è chiaro quale errore deve saltar fuori.
Ad ogni modo questa è la macro presente nel tuo esempio che hai allegato:
Option Explicit Private Sub CommandButton1_Click() Dim Riga, Rig As Variant Dim SGem0 As String Rig = 10 SGem0 = 4 If Sheets("Foglio1").Cells(2, 1) <> "" Or Sheets("Foglio1").Cells(2, 2) <> "" Then If SGem0 < Sheets("Foglio1").Cells(2, 1) Or SGem0 > Sheets("Foglio1").Cells(2, 2) Then Rig = Rig + 2 Sheets("Foglio1").Cells(Rig, 1) = " SGem0 Valore = " & SGem0 End If End If If Rig = 10 Then Range("A12") = " Nessun Errore" End Sube a mio avviso ci sono degli errori nelle dichiarazioni delle variabili.
Riganon viene mai utilizzata,Rigdovrebbe essere Integer o Long eSGem0anch'essa dovrebbe essere di tipo Integer.A parte questo non capisco cosa dovrebbe fare questa macro.
Ciao Alex grazie per il tuo intervento domani provo poi ti faccio sapere
In quanto a Riga viene utlizzata utilizzata si , perchè SGem0 era solo per una semplice dimostrazione , ma arriva a 250 , quindi
se non esistono errori , mi scrive una sola riga (Nessun Errore ) ma se ci sono 10 errori scrive 10 righe una sotto l'altra
In quanto alla variabile Rig forse sarebbe meglio Interger , ma il problema non sono le dichiarazioni delle variabili
Alex ho provato , ma non va , ma avevo già provato anche prima con Interger
Nell'esempio che ho allegato , in A2 c'è il valore minimo 2 , quindi se il valore Gem0 è = 4 mi deve restituire Nessun errore
Per essere più chiari Gem0 = 4 , il valore minimo deve essre minore o uguale a 4 , il vaqlore massimo deve essere maggiore o uguale a 4 il risultato sarà nessun errore
ma se lascio la cella B2 vuota , mi da errore
Risolto grazie Alex
`Option Explicit Private Sub CommandButton1_Click() Dim Riga, Rig, SGem0, N As Integer Rig = 10 SGem0 = 4 N = 0 If SGem0 < Sheets("Foglio1").Cells(2, 1) Then N = N + 1 If Sheets("Foglio1").Cells(2, 2) <> "" Then If SGem0 > Sheets("Foglio1").Cells(2, 2) Then N = N + 1 If N > 0 Then Rig = Rig + 2 Sheets("Foglio1").Cells(Rig, 1) = " SGem0 Valore = " & SGem0 End If If Rig = 10 Then Range("A12") = " Nessun Errore" End Sub`Allegati:
You must be logged in to view attached files. -
AutoreArticoli
