Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

code sous excel 2003,mais ne fonctionne pas sous excel 2000

  • Initiateur de la discussion Initiateur de la discussion laplayast
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

laplayast

XLDnaute Occasionnel
Bonjour,
Le code suivant fonctionne très bien sous excel2003;mais pas sous excel2000.A la ligne 3 il marque "erreur 1004".
J'aurai besoin d'aide,car il s'agit principalement de fonction de test sur des cellules avec des conditions.
Merci de votre assistance,afin de modifier le code
Laplayast.



Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
If ActiveSheet.Index < Sh.Index Then Exit Sub
If Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions).Count = 0 Then Exit Sub
With Application
.EnableEvents = False
If .CountA(Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions)) <> _
Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions).Count Then
Sh.Activate
MsgBox "Faut tout remplir, mon gars!"
End If
.EnableEvents = True
End With
End Sub

Private Sub Workbook_Open()
For Each Sh In Sheets
Sh.Protect userInterfaceOnly:=True
Next Sh
 
Re : code sous excel 2003,mais ne fonctionne pas sous excel 2000

bonjour laplayast

Une solution (pas vraiment elegante)

Code:
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
If ActiveSheet.Index < Sh.Index Then Exit Sub
[COLOR=blue]On Error Resume Next
[/COLOR] If Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions).Count = 0 Then Exit Sub
[COLOR=blue] If Err.Number <> 0 Then Exit Sub
On Error GoTo 0
[/COLOR]With Application
.EnableEvents = False
If .CountA(Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions)) <> _
Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions).Count Then
Sh.Activate
MsgBox "Faut tout remplir, mon gars!"
End If
.EnableEvents = True
End With
End Sub
 
Re : code sous excel 2003,mais ne fonctionne pas sous excel 2000

Bonsoir,
Apres,essai cela ne fonctionne pas,et le verrouillage des cellules n'est pas operationnel.Comment s'en sortir?
voici le code en entier.
Merci de votre aide.
laplayast.

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
If ActiveSheet.Index < Sh.Index Then Exit Sub
On Error Resume Next
If Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions).Count = 0 Then Exit Sub
If Err.Number <> 0 Then Exit Sub
On Error GoTo 0
With Application
.EnableEvents = False
If .CountA(Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions)) <> _
Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions).Count Then
Sh.Activate
MsgBox "Faut tout remplir, mon gars!"
End If
.EnableEvents = True
End With
End Sub

Private Sub Workbook_Open()
For Each Sh In Sheets
Sh.Protect userInterfaceOnly:=True
Next Sh
With Sheets("voiture")
.Unprotect Password:="toto"
.Cells.Locked = True
.Range("B4:B5,B8,B25:B46,B56,C31,D4,D8,D11😀16,D20,D22,D29😀30,D34,D41😀43,D49,D51,D53,E11:E12,F4,F11:F12,F22,F29:F30,F34,F43,F56,G25:G46,G49,G51,G53").Locked = False
.Protect Password:="toto"
End With
With Sheets("fleur")
.Unprotect Password:="toto"
.Cells.Locked = True
.Range("B3:B4,B8,B24:B44,B64:B73,C20,C56:C57,C59:C61,D3,D8,D11😀16,D32😀33,D66😀73,E11:E12,E15:E16,E34:E36,E38:E39,E42,E47,E49,E51,E57,E59:E61,F3,F11,F18,F20,F33,F66:F73,G34:G36,G38:G39,G42,H24:H44,H47,H49,H51,H54:H61,H64:H73").Locked = False
.Protect Password:="toto"
End With
With Sheets("poire")
.Unprotect Password:="toto"
.Cells.Locked = True
.Range("B3:B4,B9:B10,B12:B13,B15:B18,C9:C10,C12:C13,C15:C18,D3,E10,E12:E13,F3,F9:F10,F12:F13,F15:F18").Locked = False
.Protect Password:="toto"
End With
End Sub
 
Re : code sous excel 2003,mais ne fonctionne pas sous excel 2000

BONSOIR,
Après,une mauvaise manip cela fonctionne au second essai;mais la 2eme partie du code n'est pas prise en compte"le MSG BOX"ne fonctionne pas.
Le test sur sur les cellules n'est pas pris en compte;et le message"faut tout remplir mon gars"n'apparrait pas si une cellule est vide.
Merci de votre aide.
Laplayast.

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
If ActiveSheet.Index < Sh.Index Then Exit Sub
On Error Resume Next
If Sh.Cells.SpecialCells(xlCellTypeAllFormatCondition s).Count = 0 Then Exit Sub
If Err.Number <> 0 Then Exit Sub
On Error GoTo 0
With Application
.EnableEvents = False
If .CountA(Sh.Cells.SpecialCells(xlCellTypeAllFormatC onditions)) <> _
Sh.Cells.SpecialCells(xlCellTypeAllFormatCondition s).Count Then
Sh.Activate
MsgBox "Faut tout remplir, mon gars!"

End If
.EnableEvents = True
End With
End Sub
 
Re : code sous excel 2003,mais ne fonctionne pas sous excel 2000

Bonjour laplayast, PierreJean🙂

A vérifier mais il me semble bien que l'argument "xlCellTypeAllFormatConditions" n'existe pas sous Excel2000...

bon après midi
@+
 
Re : code sous excel 2003,mais ne fonctionne pas sous excel 2000

Bonjour chez vous



Pierrot93

Sous Excel 2000, c'est la même chose :

Cells.SpecialCells(xlCellTypeAllFormatConditions).Select

(je viens de tester)


PS: j'ai aussi tester le code du message de 21h57

et je n'obtiens pas de message d'erreur😕
 
Dernière édition:
Re : code sous excel 2003,mais ne fonctionne pas sous excel 2000

BONSOIR,
Pour moi,avec la version excel2000 cela ne le prend pas en compte.C'est à dire les lignes suivantes du code ne sont pas testés;il ne se passe rien.
La condition suivante devrait être rempli :si une cellule avec MFC est vide,le MSBOX"faut tout remplir mon gars"devrait s'afficher ce qui n'est pas le cas.
Merci de votre aide.

CODE/
With Application
.EnableEvents = False
If .CountA(Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions)) <> _
Sh.Cells.SpecialCells(xlCellTypeAllFormatConditions).Count Then
Sh.Activate
MsgBox "Faut tout remplir, mon gars!"
End If
.EnableEvents = True
End With
End Sub
 
Re : code sous excel 2003,mais ne fonctionne pas sous excel 2000

Bonsoir chez vous

Pierrot93

Existe sous Excel 2000

Voir ci-dessous code obtenu en enregistrant une macro

Code:
Sub Macro1()
' Macro1 Macro
' Macro enregistrée le 27/08/2009*
    ActiveCell.SpecialCells(xlCellTypeAllFormatConditions).Select
End Sub
 
Re : code sous excel 2003,mais ne fonctionne pas sous excel 2000

Bonsoir,
Je souhaiterai,faire tourner le code en VBA crée sous excel2003;sous excel 2000.Mais il se produit des bugs,est ce que quelqu'un peut vérifier.
Merci de votre assistance.
Laplayast.
 
Re : code sous excel 2003,mais ne fonctionne pas sous excel 2000

Bonsoir,
Je n'ai pas de réponse,sur le code crée sous excel2003 et qui ne fonctionne pas sous excel2000.
Est ce quelqu'un peut y regarder.
Merci de votre aide.
Laplayast
 
Re : code sous excel 2003,mais ne fonctionne pas sous excel 2000

Bonsoir,
Je,viens de créer une macro sous excel2000 avec une mise en forme conditionnelle le code est le suivant:
Je souhaiterai que celui ci s'exécute dans le workbook;sur la feuille1 en ouvrant la feuille.
Mais je ne sais pas comment faire.
merci de votre aide.
laplayast.

Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 31/08/2009 par toto
Range("J13").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:=""
Selection.FormatConditions(1).Interior.ColorIndex = 16
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="0"
Selection.FormatConditions(2).Interior.ColorIndex = 43

Range("K11").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:=""
Selection.FormatConditions(1).Interior.ColorIndex = 16
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="0"
Selection.FormatConditions(2).Interior.ColorIndex = 43

Range("L13").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:=""
Selection.FormatConditions(1).Interior.ColorIndex = 16
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="0"
Selection.FormatConditions(2).Interior.ColorIndex = 43
End Sub
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
432
Réponses
35
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…