Pb Code
Résolu
Louloude74
Messages postés
62
Statut
Membre
-
Louloude74 Messages postés 62 Statut Membre -
Louloude74 Messages postés 62 Statut Membre -
Bonjour à tous,
Si j'avais des cheveux je serai en train de tous me les arracher. Il y a un truc que je ne comprend pas. Il y a ce bout de code
If Application.WorksheetFunction.CountIf(ActiveWorkbook.Sheets("Catégorie").Range(Cells(2, Colonne), Cells(LigneDes + 1, Colonne)), ActiveWorkbook.Sheets("Saisie").Range("Description").Value) = 0 Then
qui fonctionne très bien lorsque je suis sur la bonne feuille ici "Catégorie". Par contre dès que je lance la macro depuis une autre feuille j'ai un message d'erreur et je dois manuellement sélectionner la feuille "Catégorie" puis relancer la macro pour que ça fonctionne. Ce que je ne comprend pas c'est que ça fonctionne très bien avec une autre macro où j'utilise le même bout de code.
Si une âme charitable a une explication, je suis preneur.
Par avance merci de votre aide.
Si j'avais des cheveux je serai en train de tous me les arracher. Il y a un truc que je ne comprend pas. Il y a ce bout de code
If Application.WorksheetFunction.CountIf(ActiveWorkbook.Sheets("Catégorie").Range(Cells(2, Colonne), Cells(LigneDes + 1, Colonne)), ActiveWorkbook.Sheets("Saisie").Range("Description").Value) = 0 Then
qui fonctionne très bien lorsque je suis sur la bonne feuille ici "Catégorie". Par contre dès que je lance la macro depuis une autre feuille j'ai un message d'erreur et je dois manuellement sélectionner la feuille "Catégorie" puis relancer la macro pour que ça fonctionne. Ce que je ne comprend pas c'est que ça fonctionne très bien avec une autre macro où j'utilise le même bout de code.
Si une âme charitable a une explication, je suis preneur.
Par avance merci de votre aide.
A voir également:
- Pb Code
- Code ascii - Guide
- Code puk bloqué - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code activation windows 10 - Guide
- Code blocks - Télécharger - Langages
1 réponse
Bonjour,
En effet marche pas dans cette ecriture, mais ok comme ceci
En effet marche pas dans cette ecriture, mais ok comme ceci
Sub test() Dim t As Range colonne = 1 lignedes = 7 With Worksheets("Categorie") Set t = .Range(.Cells(2, colonne), .Cells(lignedes + 1, colonne)) 'mise en memoire End With If Application.CountIf(t, Worksheets("Saisie").Range("Description").Value) = 0 Then MsgBox "Pas trouve" Else MsgBox "Trouve au moins une fois" End If End Sub
Ca marche extraordinairement bien. Je suis super content.
Vraiment merci beaucoup. Mes cheveux commencent à pousser à nouveaux ;)
Un énorme MERCI.
Bonne journée et à très bientôt. (et oui j'aurai bientôt de nouvelles questions).
Cdt, Ludwig
Je reviens à la charge. JE suis confronter au même problème que précédemment et j'ai adapté ta solution à ce code mais le problème persiste. Il faut que je sois sur la feuille 3Catégorie" pour que cela fonction mais si je lance la macro depuis une autre feuille, c'est débogage.
Dans ce code je souhaite renommer une plage de cellule en fonction d'une valeur. Le but est de pouvoir utiliser ce nom de cellule ou de page de cellule dans une liste déroulante en cascade. Comme ceci la plage s'ajustera automatiquement en fonction des saisies.
Encore merci et à très vite.
Sub NommerPlageDescription()
Dim Plage As Range
Dim Cellule As Range
Dim Ligne As Integer
Dim Colonne As Integer
Dim ColonneFin As Integer
ColonneFin = Sheets("Catégorie").Cells(1, Cells.Columns.Count).End(xlToLeft).Column
Colonne = 2
While Colonne <= ColonneFin
Ligne = Worksheets("Catégorie").Cells(65536, Colonne).End(xlUp).Row
With Worksheets("Catégorie")
Set Plage = .Range(.Cells(2, Colonne), .Cells(Ligne, Colonne)) 'mise en memoire
Set Cellule = Cells(1, Colonne)
End With
ActiveWorkbook.Names.Add Name:=Replace(Cellule.Value, " ", ""), RefersToR1C1:=Plage 'Renomme la cellule
Colonne = Colonne + 1
Ligne = Ligne + 1
Wend
End Sub
Deja pourquoi ceci: Replace(Cellule.Value, " ", "")
Tout d'abord merci de te pencher sur mon problème et qui plus est de au pied levé !
J'utilise replace() pour enlever les espaces entre chaque mot car les mots composés ne sont pas admis pour renommer les cellules ou plage de cellule.
Certes, certes, alors ne mettez pas de Blanc...........
Si vous tenez a vos Blancs