Fråga : Excelvba - hur man bestämmer, om 3 celler är tomma?

Förmiddag som I kodifierar i Worksheet_BeforeDoubleClick () och använder den Marlett stilsorten märker ”r” för att visa ett X, om en cell doubles-clicked, men klart xet, om double-clicked särskilda celler för again.

For 3 (E46: E48) inom denna double-click spänner, om ett X (Marlett ”r”) finns och en ska double-click tar den bort (uppsätta som mål = vbNullString), mig behöver att kontrollera för att se, om några av de 3 cellerna (E46: ) Stillbilden E48 innehåller ett X (Marlett ”r”), och om de är alla tomma, mig behöver att göra något till en olik cell.

I kan inte få min kodifierar för att fungera: den är fodrar 8 i den nedanföra kodifiera som inte är arbetet right.
Hope som, någon kan help.
> för
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
" codeBody " " >If för class= " för 1 går ut därefter suben Om att inte skära (uppsätta som mål, spänna (”E18: E328”)) Är ingenting därefter Target.Font.Name = ”Marlett”, Om uppsätta som mål = vbNullString därefter Uppsätta som mål = ”r”, Annars Uppsätta som mål = vbNullStrung Om att inte skära (uppsätta som mål, spänna (”E46: E48”)) Är ingenting därefter Om IsNull (spänna (”E46: E48”)) Därefter … gör något till en olik cell Annars … blah - blah Avsluta om Avsluta om Avsluta om
" klar "

Svar : Excelvba - hur man bestämmer, om 3 celler är tomma?

Jag hade annulleringen = det riktiga meddelandet i ett mindre än optimalt att förlägga. Om dig flyttning det, för jumbon avslutar, om, det skulle tillstånd det normaladouble-clickhändelsen att uppstå, om användaren double-clicks utanför spänna E18: E328
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
Privata underWorksheet_BeforeDoubleClick (ByVal uppsätta som mål som spänner, avbryter som Boolean),
Om Target.Cells.Count > 1 går ut därefter suben
Om att inte skära (uppsätta som mål, spänna (”E18: E328”)) Är ingenting därefter
    Target.Font.Name = ”Marlett”,
    Om uppsätta som mål = vbNullString därefter
        Uppsätta som mål = ”r”,
    Annars
        Uppsätta som mål = vbNullString
        Om att inte skära (uppsätta som mål, spänna (”E46: E48”)) Är ingenting därefter
            Om Application.CountA (spänna (”E46: E48”)) = 0 därefter
                Spänna (”F46”) = ”riktigt”,
            Annars
                Spänna (”F46”) = ”falskt”,
            Avsluta om
        Avsluta om
    Avsluta om
    Annulleringen = True
Avsluta om
Avsluta suben
Andra lösningar  
 
programming4us programming4us