Bonjour à tous !
Voilà je bloque complétement là, je ne suis pas expert du tout en VBA je bidouille un peu et là j'ai fais un code assez long et peut être trop même.
Ce code ne marche pas et je ne comprend pas pourquoi. Voyez vous même ;
	
	
	
	
	
		
Cette ligne : Sheets("PDL").Range("B" & mn).Value = Sheets("PDL").Range("A1").Value (située vers la fin du code)
est surlignée en jaune lorsque la macro plante. Pour mieux situer le problème j'ai essayer de remplacer cette ligne par : Sheets("PDL").Range(B24).Value = 33
Qui est beaucoup plus simple mais ne fonctionne pas non plus et me renvoie la même erreur.... que faire ....
Si nécessaire je peut fournir le fichier complet, mais il est assez conséquent. M'enfin si quelqu'un est volontaire pour relire mon fichier (je pense qu'il n'y a pas que ça à corriger '^^). Merci de jeter un oeil à mon message en tout cas !
Bye
	
		
			
		
		
	
				
			Voilà je bloque complétement là, je ne suis pas expert du tout en VBA je bidouille un peu et là j'ai fais un code assez long et peut être trop même.
Ce code ne marche pas et je ne comprend pas pourquoi. Voyez vous même ;
		Code:
	
	
	Private Sub Ok3_Click()
Dim c As Integer
Dim incrctr As Integer
Dim texte As String
Dim lignomcli As Integer
lignomcli = Sheets("Clients").Range("D3:D1048576").cells.Find(Contratsociete3.Value).Row
texte = Formule3.Value
c = Sheets("Contrats").Range("B1048576").End(xlUp).Offset(1, 0).Row
If Contratsociete3.Value = "" Or Formule3.Value = "" Or Comm3.Value = "" Or Prefpanier3.Value = "" Then
    MsgBox "Veuillez rentrer TOUTES les informations nécessaires !"
Else
    Sheets("Contrats").Range("A2").Value = Sheets("Contrats").Range("A2").Value + 1
    incrctr = Sheets("Contrats").Range("A2").Value
        If Formule3.Value = Sheets("Listes").Range("C6").Value Then 'Si abonnement
            
            Range("B" & c) = Sheets("Contrats").Range("A2").Value
            Range("D" & c).Value = Contratsociete3.Value
            Range("F" & c).Value = Formule3.Value
            Range("AA" & c).Value = TextBox4.Value
            Range("Y" & c).Value = TextBox5.Value
            Range("H" & c).Value = Comm3.Value
            Range("I" & c).Value = Prefpanier3.Value
            Range("J" & c).Value = pan1.Value * 1
            Range("K" & c).Value = pan2.Value * 1
            Range("L" & c).Value = pan3.Value * 1
            Range("M" & c).Value = pan4.Value * 1
            Range("N" & c).Value = pan5.Value * 1
            Range("O" & c).Value = Jour1.Value
            Range("p" & c).Value = Jour2.Value
            Range("q" & c).Value = Jour3.Value
            Range("r" & c).Value = Jour4.Value
            Range("s" & c).Value = Jour5.Value
            Range("T" & c).Value = DateCre3.Value
            Range("W" & c).Value = Susp13.Value
            Range("X" & c).Value = Susp23.Value
        Else 'si a la carte
            Range("B" & c).Value = incrctr
            Range("D" & c).Value = Contratsociete3.Value
            Range("F" & c).Value = Formule3.Value
            Range("V" & c).Value = Semlivr3.Value
            Range("AA" & c).Value = 1
            Range("Y" & c).Value = 1
            Range("H" & c).Value = Comm3.Value
            Range("I" & c).Value = Prefpanier3.Value
            Range("J" & c).Value = pan1.Value * 1
            Range("K" & c).Value = pan2.Value * 1
            Range("L" & c).Value = pan3.Value * 1
            Range("M" & c).Value = pan4.Value * 1
            Range("N" & c).Value = pan5.Value * 1
            Range("O" & c).Value = Jour1.Value
            Range("p" & c).Value = Jour2.Value
            Range("q" & c).Value = Jour3.Value
            Range("r" & c).Value = Jour4.Value
            Range("s" & c).Value = Jour5.Value
            Range("T" & c).Value = DateCre3.Value
            Range("W" & c).Value = Susp13.Value
            Range("X" & c).Value = Susp23.Value
            
            
            
        MsgBox "Veuillez renseigner ou vérifier votre type de contrat (formule)"
        End If
        
        
                    If CheckBox1.Value = True Then
                        
                        Sheets("PDL").Range("A1").Value = Sheets("PDL").Range("A1").Value + 1
                        
                        Dim mn As Integer
                        mn = Sheets("PDL").Range("B1048576").End(xlUp).Offset(1, 0)
                        
                        Sheets("Contrats").Range("E" & c).Value = Sheets("PDL").Range("A1").Value
                        Sheets("PDL").Range("B" & mn).Value = Sheets("PDL").Range("A1").Value
                        Sheets("PDL").Range("C" & mn).Value = Sheets("Clients").Range("B" & lignomcli).Value
                        Sheets("PDL").Range("D" & mn).Value = Contratsociete3.Value
                        Sheets("PDL").Range("E" & mn).Value = "APF Entreprise"
                        Sheets("PDL").Range("F" & mn).Value = Sheets("Clients").Range("E" & lignomcli).Value
                        Sheets("PDL").Range("G" & mn).Value = Sheets("Clients").Range("G" & lignomcli).Value
                        Sheets("PDL").Range("H" & mn).Value = Sheets("Clients").Range("H" & lignomcli).Value
                        Sheets("PDL").Range("I" & mn).Value = Sheets("Clients").Range("I" & lignomcli).Value
                        Sheets("PDL").Range("J" & mn).Value = Sheets("Clients").Range("J" & lignomcli).Value
                    
                    Else
                        
                        Range("E" & c).Value = PDL3.Value
                    
                    End If
                    
                    
                    
End If
        
Unload AddContrat1
End Sub
	Cette ligne : Sheets("PDL").Range("B" & mn).Value = Sheets("PDL").Range("A1").Value (située vers la fin du code)
est surlignée en jaune lorsque la macro plante. Pour mieux situer le problème j'ai essayer de remplacer cette ligne par : Sheets("PDL").Range(B24).Value = 33
Qui est beaucoup plus simple mais ne fonctionne pas non plus et me renvoie la même erreur.... que faire ....
Si nécessaire je peut fournir le fichier complet, mais il est assez conséquent. M'enfin si quelqu'un est volontaire pour relire mon fichier (je pense qu'il n'y a pas que ça à corriger '^^). Merci de jeter un oeil à mon message en tout cas !
Bye