Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Msg se cella è vuota

53 views
Skip to first unread message

Drago

unread,
Mar 4, 2010, 6:42:50 AM3/4/10
to
Ho bisogno di controllare 2 Range:
A4 : A50
C4 :C50

Se in una cella compresa in questi range � vuota, vorrei che mi uscisse un
messaggio che mi indicasse tale cella.
Grazie

Mauro Gamberini

unread,
Mar 4, 2010, 7:52:38 AM3/4/10
to

Capito pochissimo.
Comunque, questa *dovrebbe* fare
quanto chiedi.
Se in A4 o in C4 non hai un valore valido,
viene restituito un errore(gestito):

Public Sub m()

On Error GoTo RigaErrore

'dichiaro le variabili
Dim wk As Workbook
Dim sh As Worksheet
Dim rng As Range
Dim c As Range

'metto un riferimento al worksbook
'che contiene il codice
Set wk = ThisWorkbook

'metto un riferimento al Foglio1
With wk
Set sh = .Worksheets("Foglio1")
End With

With sh
'metto un riferimento al Range
Set rng = .Range( _
.Range("A4").Value _
& ":" & _
.Range("C4").Value)
'ciclo il Range rng
For Each c In rng
If Len(c.Value) = 0 Then
MsgBox c.Address & " � vuota."
End If
Next
End With

RigaChiusura:
'Set a Nothing delle variabili oggetto
Set c = Nothing
Set rng = Nothing
Set sh = Nothing
Set wk = Nothing
Exit Sub

RigaErrore:
MsgBox Err.Number & vbNewLine _
& Err.Description & vbNewLine _
& "Inserire valori in A4 e C4"
Resume RigaChiusura

End Sub

Fai sapere se � quello che cerchi.
Grazie.

--
---------------------------
Mauro Gamberini
Microsoft MVP - Excel
http://www.riolab.org/
http://www.maurogsc.eu/
http://social.microsoft.com/Forums/it-IT/excelit/threads


__________ Informazioni da ESET NOD32 Antivirus, versione del database delle firme digitali 4914 (20100304) __________

Il messaggio � stato controllato da ESET NOD32 Antivirus.

www.nod32.it

Scossa

unread,
Mar 4, 2010, 8:08:08 AM3/4/10
to
On 4 Mar, 13:52, "Mauro Gamberini"

<maurogscRIMUOV...@RIMUOVEREaliceposta.it> wrote:
> > Ho bisogno di controllare 2 Range:
> > A4 : A50
> > C4 :C50
>
> > Se in una cella compresa in questi range è vuota, vorrei che mi uscisse un

> > messaggio che mi indicasse tale cella.
>
> Capito pochissimo.
> Comunque, questa *dovrebbe* fare
> quanto chiedi.

Confessa .... quanto vino hai bevuto a pasto :-))

Non ho capito quasi nulla neanch'io di quello che ha chiesto (quando
deve apparire il messaggio?) ma mi pare che voglia l'avviso se una
delle celle di uno dei due range è vuota (e se le celle vuote sono più
di una?)

Bye!
Scossa

Mauro Gamberini

unread,
Mar 4, 2010, 10:46:53 AM3/4/10
to
Non ho capito quasi nulla neanch'io di quello che ha chiesto (quando
deve apparire il messaggio?) ma mi pare che voglia l'avviso se una
delle celle di uno dei due range � vuota (e se le celle vuote sono pi�
di una?)
*********************************************

La macro fa uscire una MsgBox
per ogni cella vuota compresa
nell'intervallo specificato in A4 e C4.

Es.

A4: B1
C4: B5

Controller� le celle del Range B1:B5

Sul quando....


Confessa .... quanto vino hai bevuto a pasto :-))

********************************

Chi mi conosce sa che sono astemio...
...e bugiardo.

__________ Informazioni da ESET NOD32 Antivirus, versione del database delle firme digitali 4915 (20100304) __________

Drago

unread,
Mar 4, 2010, 1:45:49 PM3/4/10
to
Forse � scappato qualche bicchierino di troppo
sostanzialmente devo far girare una macro che mi controlla da A4 a A50
compresi gli estremi ed un'altra serie di celle che va da C4 a C50. Se una o
pi� celle comprese in questi due intervalli � vuota dovrebbe segnalarmi la
cella che mi sono dimenticato di compilare; se sono pi� di una, non �
neccessario che escano tanti msgbox quante sono le celle vuote, ma �
sufficiente che mi esca la prima vuota. L'altra la intercetto al prossimo
click.
Spero di aver smaltito la sbornia
Saluti


"Mauro Gamberini" <maurogsc...@RIMUOVEREaliceposta.it> ha scritto nel
messaggio news:hmokld$u5m$1...@news.eternal-september.org...


> Non ho capito quasi nulla neanch'io di quello che ha chiesto (quando
> deve apparire il messaggio?) ma mi pare che voglia l'avviso se una

> delle celle di uno dei due range � vuota (e se le celle vuote sono pi�


> di una?)
> *********************************************
>
> La macro fa uscire una MsgBox
> per ogni cella vuota compresa
> nell'intervallo specificato in A4 e C4.
>
> Es.
>
> A4: B1
> C4: B5
>

> Controller� le celle del Range B1:B5


>
> Sul quando....
>
>
> Confessa .... quanto vino hai bevuto a pasto :-))
> ********************************
>
> Chi mi conosce sa che sono astemio...
> ...e bugiardo.
>
> --
> ---------------------------
> Mauro Gamberini
> Microsoft MVP - Excel
> http://www.riolab.org/
> http://www.maurogsc.eu/
> http://social.microsoft.com/Forums/it-IT/excelit/threads
>
>
>
> __________ Informazioni da ESET NOD32 Antivirus, versione del database
> delle firme digitali 4915 (20100304) __________
>

> Il messaggio � stato controllato da ESET NOD32 Antivirus.
>
> www.nod32.it
>
>
>
>

Mauro Gamberini

unread,
Mar 4, 2010, 2:05:00 PM3/4/10
to
> Forse � scappato qualche bicchierino di troppo

> sostanzialmente devo far girare una macro che mi controlla da A4 a A50
> compresi gli estremi ed un'altra serie di celle che va da C4 a C50. Se una
> o pi� celle comprese in questi due intervalli � vuota dovrebbe segnalarmi
> la cella che mi sono dimenticato di compilare; se sono pi� di una, non �
> neccessario che escano tanti msgbox quante sono le celle vuote, ma �
> sufficiente che mi esca la prima vuota. L'altra la intercetto al prossimo
> click.
>

Public Sub m()

On Error GoTo RigaErrore

'dichiaro le variabili
Dim wk As Workbook
Dim sh As Worksheet
Dim rng As Range
Dim c As Range

'metto un riferimento al worksbook
'che contiene il codice
Set wk = ThisWorkbook

'metto un riferimento al Foglio1
With wk
Set sh = .Worksheets("Foglio1")
End With

With sh
'metto un riferimento al Range
Set rng = .Range( _

.Range("A4:A50,C4:C50")


'ciclo il Range rng
For Each c In rng
If Len(c.Value) = 0 Then
MsgBox c.Address & " � vuota."

Exit For


End If
Next
End With

RigaChiusura:
'Set a Nothing delle variabili oggetto
Set c = Nothing
Set rng = Nothing
Set sh = Nothing
Set wk = Nothing
Exit Sub

RigaErrore:
MsgBox Err.Number & vbNewLine _
& Err.Description & vbNewLine _
& "Inserire valori in A4 e C4"
Resume RigaChiusura

End Sub

Hic!

__________ Informazioni da ESET NOD32 Antivirus, versione del database delle firme digitali 4916 (20100304) __________

Il messaggio � stato controllato da ESET NOD32 Antivirus.

www.nod32.it


plinius

unread,
Mar 4, 2010, 2:16:03 PM3/4/10
to

"Drago" <V_IsA...@UlSiCbOeLrEo.it> ha scritto nel messaggio
news:xdTjn.143023$9f6.1...@twister1.libero.it...
> Forse � scappato qualche bicchierino di troppo

> sostanzialmente devo far girare una macro che mi controlla da A4 a A50
> compresi gli estremi ed un'altra serie di celle che va da C4 a C50. Se una
> o pi� celle comprese in questi due intervalli � vuota dovrebbe segnalarmi
> la cella che mi sono dimenticato di compilare; se sono pi� di una, non �
> neccessario che escano tanti msgbox quante sono le celle vuote, ma �
> sufficiente che mi esca la prima vuota. L'altra la intercetto al prossimo
> click.
> Spero di aver smaltito la sbornia
> Saluti

Se ti va basta che in una cella appaia il numero di celle lasciate vuote:
=MATR.SOMMA.PRODOTTO(--VAL.VUOTO(A4:A50))+MATR.SOMMA.PRODOTTO(--VAL.VUOTO(C4:C50))

Ciao,
E.


Drago

unread,
Mar 4, 2010, 2:32:57 PM3/4/10
to
Ringrazio come sempre per il veloce riscontro.
P.S. Ciao E. volevo farlo tramite codice.
Saluti

"plinius" <punto....@libero.it> ha scritto nel messaggio
news:TFTjn.31914$Ua....@twister2.libero.it...


>
> "Drago" <V_IsA...@UlSiCbOeLrEo.it> ha scritto nel messaggio
> news:xdTjn.143023$9f6.1...@twister1.libero.it...

>> Forse � scappato qualche bicchierino di troppo


>> sostanzialmente devo far girare una macro che mi controlla da A4 a A50
>> compresi gli estremi ed un'altra serie di celle che va da C4 a C50. Se

>> una o pi� celle comprese in questi due intervalli � vuota dovrebbe
>> segnalarmi la cella che mi sono dimenticato di compilare; se sono pi� di

>> una, non � neccessario che escano tanti msgbox quante sono le celle
>> vuote, ma � sufficiente che mi esca la prima vuota. L'altra la intercetto

Mauro Gamberini

unread,
Mar 5, 2010, 2:39:33 AM3/5/10
to
Ehmmm......

Public Sub m()

On Error GoTo RigaErrore

'dichiaro le variabili
Dim wk As Workbook
Dim sh As Worksheet
Dim rng As Range
Dim c As Range

'metto un riferimento al worksbook
'che contiene il codice
Set wk = ThisWorkbook

'metto un riferimento al Foglio1
With wk
Set sh = .Worksheets("Foglio1")
End With

With sh
'metto un riferimento al Range

Set rng = .Range("A4:A50,C4:C50")


'ciclo il Range rng
For Each c In rng
If Len(c.Value) = 0 Then
MsgBox c.Address & " � vuota."
Exit For
End If
Next
End With

RigaChiusura:
'Set a Nothing delle variabili oggetto
Set c = Nothing
Set rng = Nothing
Set sh = Nothing
Set wk = Nothing
Exit Sub

RigaErrore:
MsgBox Err.Number & vbNewLine _
& Err.Description & vbNewLine _
& "Inserire valori in A4 e C4"
Resume RigaChiusura

End Sub

--

__________ Informazioni da ESET NOD32 Antivirus, versione del database delle firme digitali 4913 (20100303) __________

0 new messages