Question : Worksheet_Change

J'ai une feuille de travail qui a une gamme appelée dans lui a appelé « Col_M ».  Elle est sur une feuille débloquée et non protégée ouverte.  Les cellules dans la gamme « Col_M » ont des formules dans eux et je veux employer le processus de WorkSheet_Change pour empêcher le changement des cellules dans la gamme, au lieu de la feuille me protège, serrure ouvre…. (longue histoire) mais je dois employer quelque chose autre puis la protection standard method.

Is de feuille là une manière d'employer WorkSheet_Change au montior cette gamme, et si des trys d'un utilisateur pour changer une valeur de cellules dans cette gamme pour l'arrêter, n'alerter aucun chg est-elle permise et empêcher le changement ? le

Col_M est une dynamique ainsi des rangées sont ajoutées et supprimé tous les heure et lui ne devrait pas importer que des rangées soient ajoutées ou emportées.  Ce processus ne devrait pas soin des rangées sont ajoutés ou supprimés de Col_M, et est-ce qu'il devrait-il tenir compte de cela, juste aucune cellule édite pour les cellules dans le Col_M range.

Can que ceci même soit fait ?  Conseiller svp et des mercis. - R-
class= de

Réponse : Worksheet_Change

Bonjour R,

celui-ci devrait fonctionner encore meilleur : dans la version préalable, l'utilisateur pourrait choisir plus d'une cellule et supprimer les formules. La version jointe maintenant permet seulement l'insertion ou la suppression des rangées ou des colonnes de *complete*. On ne permettra pas toute autre manipulation de cellules sur la gamme « col_M ».

à la votre, teylyn
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
Worksheet_Change secondaire privé (cible de ByVal comme gamme)
Sinon intersecter (cible, gamme (le « col_M »)) N'est rien alors
    Application.EnableEvents = faux
    Si Target.Rows.Count = gamme (« A1 », cellules (Rows.Count, « A »)). Rows.Count alors
        Application.EnableEvents = rectifient
        Sortir le sous-marin
    Finir si
    Si Target.Columns.Count = gamme (« A1 », cellules (1, Columns.Count)). Columns.Count alors
        Application.EnableEvents = rectifient
        Sortir le sous-marin
    Finir si
    Application.Undo
    MsgBox « que vous pouvez seulement insérer ou supprimer les colonnes entières ou les rangées, pas cellules de changement. »
    Application.EnableEvents = rectifient
Finir si
Finir le sous-marin
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us