Condividi tramite

Controllo prima di eseguire una MACRO

Anonimo
2018-02-13T12:01:23+00:00

Buongiorno a tutti!

volevo sapere se c'è la possibilità di inserire un controllo in una MACRO affinché ci sia una verifica su determinate celle che, se piene, la MACRO deve essere eseguita completamente mentre se anche solo una cella da controllare è vuota la MACRO non deve essere eseguita e deve segnalare con un messaggio quali celle sono vuote...

Questa è una parte della MACRO:

Sub ESEGUI()

' ESEGUI Macro

' REGISTRA DOCUMENTO

Application.ScreenUpdating = False

    Range("J3:J5").Select

    Selection.Copy

    Sheets("Contabilità").Select

    Selection.End(xlDown).Select

    Range("B1048576").Select

    Selection.End(xlUp).Select

    ActiveCell.Offset(1, 0).Range("A1").Select

    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

        :=False, Transpose:=False

...........

Application.ScreenUpdating = True

End Sub

Le celle da controllare sono: A3, A32, C3, D3, F3, J3, J10, J11, J12, J17, J21.

Grazie in anticipo per l'attenzione!

Alessandro.

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

3 risposte

Ordina per: Più utili
  1. Anonimo
    2018-02-13T15:01:04+00:00

    Ciao Alessandro,

    Funziona perfettamente! Grazie!

    Mi fa piacere che tu abbia risolto il problema e ti ringrazio per il cortese riscontro.

    Per chiudere questo thread, vorrei chiederti gentilmente di contrassegnare la mia risposta come Risposta. In questo modo, tu aiuterai anche coloro che potessero cercare soluzioni ai problemi simili negli archivi della Community.

    ===

    Regards,

    Norman

    La risposta è stata utile?

    2 persone hanno trovato utile questa risposta.
    0 commenti Nessun commento
  2. Anonimo
    2018-02-13T12:32:54+00:00

    Ciao ,

    volevo sapere se c'è la possibilità di inserire un controllo in una MACRO affinché ci sia una verifica su determinate celle che, se piene, la MACRO deve essere eseguita completamente mentre se anche solo una cella da controllare è vuota la MACRO non deve essere eseguita e deve segnalare con un messaggio quali celle sono vuote...

    Questa è una parte della MACRO:

     

    Sub ESEGUI()

    ' ESEGUI Macro

    ' REGISTRA DOCUMENTO

    Application.ScreenUpdating = False

        Range("J3:J5").Select

        Selection.Copy

        Sheets("Contabilità").Select

        Selection.End(xlDown).Select

        Range("B1048576").Select

        Selection.End(xlUp).Select

        ActiveCell.Offset(1, 0).Range("A1").Select

        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

            :=False, Transpose:=False

    ...........

    Application.ScreenUpdating = True

    End Sub

    Le celle da controllare sono: A3, A32, C3, D3, F3, J3, J10, J11, J12, J17, J21.

    Prova qualcosa del genere:

    '=========>>

    Option Explicit

    '--------->>

    Public Sub ESEGUI()

        Dim Rng As Range, rCell As Range

        Dim bEmpty As Boolean

        Const sIntervallo As String = _

               "A3, A32, C3, D3, F3, J3, J10, J11, J12, J17, J21"

        Set Rng = ActiveSheet.Range(sIntervallo)

        For Each rCell In Rng.Cells

            With rCell

                If IsEmpty(.Value) Then

                    bEmpty = True

                    Exit For

                End If

            End With

        Next rCell

        If bEmpty Then

            Call MsgBox( _

                 Prompt:="Questa procedura richieda che tutte le celle nell'intervallo " _

                         & sIntervallo & " siano riempite!" _

                         & vbNewLine & vbNewLine _

                         & "Il codice verrà terminato ", _

                 Buttons:=vbInformation, _

                 Title:="CODICE TERMINATO!")

            Exit Sub

        End If

      '\ Tuo codice

      '\ ...

      '\ ...

    End Sub

    '<<=========

    ===

    Regards,

    Norman

    La risposta è stata utile?

    2 persone hanno trovato utile questa risposta.
    0 commenti Nessun commento
  3. Anonimo
    2018-02-13T14:36:02+00:00

    Funziona perfettamente! Grazie!

    La risposta è stata utile?

    0 commenti Nessun commento