• Initiateur de la discussion Initiateur de la discussion fr832
  • 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 !

fr832

XLDnaute Occasionnel
Bonsoir j'utilise ce code et il me met une erreur " erreur de compilation nom ambigu detecté : Derling"

mon code :
Code:
 ' Mise en place des valeurs saisies
    DerLig = Range("A" & Rows.Count).End(xlUp).Row + 1
    Cells(DerLig, 1).Value = CDbl(TextBox1)
    Cells(DerLig, 2).Value = ComboBox1
    Cells(DerLig, 3).Value = CDate(DTPicker1)
    Cells(DerLig, 6).Value = txtobs
    Cells(DerLig, 4).FormulaR1C1 = "=DATE(YEAR(RC[-1])+1,MONTH(RC[-1]),DAY(RC[-1]))"
    Call mfc
    ' On décharge le formulaire
    Unload Me
End Sub

d'avance merci pour votre aide
 
Re : aide sur erreur VBA

re bonsoir voici mon code

Code:
Private Sub Cmdok_Click()
    ' On teste la saisie du gisement
    If Me.ComboBox1.Text = "" Then
        MsgBox "Vous devez selectionner un gisement de la brassière."
        Me.ComboBox1.SetFocus
        Exit Sub
    End If
    ' On teste la saisie du matériel
    If Me.TextBox1.Text = "" Then
        MsgBox "Vous devez saisir un numéro d'identification de la brassière."
        Me.TextBox1.SetFocus
        Exit Sub
    End If
    
    ' On teste la saisie de la dernière visite
    If Me.DTPicker1 = "" Then
        MsgBox "Vous devez saisir une date de la dernière visite."
        Me.DTPicker1.SetFocus
        Exit Sub
    End If
    
    
   
    ' Mise en place des valeurs saisies
    DerLig = Range("A" & Rows.Count).End(xlUp).Row + 1
    Cells(DerLig, 1).Value = CDbl(TextBox1)
    Cells(DerLig, 2).Value = ComboBox1
    Cells(DerLig, 3).Value = CDate(DTPicker1)
    Cells(DerLig, 6).Value = txtobs
    Cells(DerLig, 4).FormulaR1C1 = "=DATE(YEAR(RC[-1])+1,MONTH(RC[-1]),DAY(RC[-1]))"
    Call mfc
    ' On décharge le formulaire
    Unload Me
End Sub

amitiés
 
Re : aide sur erreur VBA

Re,

Je soupçonne un conflit avec une variable globale ...
Ajoute la ligne en rouge
Code:
Private Sub Cmdok_Click()
    [COLOR="Red"][B]Dim Derlig as Long[/B][/COLOR]
    ' On teste la saisie du gisement
    If Me.ComboBox1.Text = "" Then
    . . .
    DerLig = Range("A" & Rows.Count).End(xlUp).Row + 1
tu peux vérifier avec l'aide VBA, en entrant "Nom ambigu détecté" dans le champ de recherche

A plus
 
Re : aide sur erreur VBA

rebonsoir et merci pour ton aide, evolution mais bug toujours, ça me saisie correctement maintenant dans mon tableau sauf qu'il y a erreur de debogage avec ce code
Code:
Sub mfc()
[COLOR="Red"]With Range(Cells(Derlig, 1), Cells(Derlig, 11))[/COLOR]
    .FormatConditions.Delete
    .FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=ET(" & Cells(Derlig, 1).Address & "<>"""";MOD(LIGNE();2))"
    With .FormatConditions(1).Borders
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
    End With
    .FormatConditions(1).Interior.ColorIndex = 35
    .FormatConditions.Add Type:=xlExpression, Formula1:="=" & Cells(Derlig, 1).Address & "<>"""""
    With .FormatConditions(2).Borders
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
    End With
End With
    
End Sub

merci d'avance
 
Re : aide sur erreur VBA

Re,

Derlig est donc bien une variable globlale

1 - Supprime la ligne que je t'ai fais ajouter dans mon post précedant,
car cela empêche l'affectation de la variable (qui vaut donc 0 quant tu l'appelles dans le With, d'ou l'erreur Ligne = 0)

2 - Recherches toutes les occurences de "Derlig" dans ton module, tu devrais en trouver une qui ne correspond pas aux autres.

Si tu ne trouve pas, postes le classeur avec tout le module qui bug (mais sans données confidentielles)

A plus
 
Re : aide sur erreur VBA

bonsoir à tous

tu as Derlig dans un module > Public Derlig As Long
et tu as Derlig ici INUTILE
> Private Sub Cmdok_Click()
> Dim Derlig As Long

ensuite il y a plantage ICI car Derlig est = 0 !?
Sub mfc()
With Range(Cells(Derlig, 1), Cells(Derlig, 11))
 
Re : aide sur erreur VBA

bonsoir roland m voila avec ce code ça bug quand meme
Code:
[Private Sub Cmdok_Click()

    ' On teste la saisie du gisement
    If Me.ComboBox1.Text = "" Then
        MsgBox "Vous devez selectionner un gisement de la brassière."
        Me.ComboBox1.SetFocus
        Exit Sub
    End If
    ' On teste la saisie du matériel
    If Me.TextBox1.Text = "" Then
        MsgBox "Vous devez saisir un numéro d'identification de la brassière."
        Me.TextBox1.SetFocus
        Exit Sub
    End If
    
    ' On teste la saisie de la dernière visite
    If Me.DTPicker1 = "" Then
        MsgBox "Vous devez saisir une date de la dernière visite."
        Me.DTPicker1.SetFocus
        Exit Sub
    End If
    
    
   
    ' Mise en place des valeurs saisies
    Derlig = Range("A" & Rows.Count).End(xlUp).Row + 1
    Cells(Derlig, 1).Value = CDbl(TextBox1)
    Cells(Derlig, 2).Value = ComboBox1
    Cells(Derlig, 3).Value = CDate(DTPicker1)
    Cells(Derlig, 6).Value = txtobs
    Cells(Derlig, 4).FormulaR1C1 = "=DATE(YEAR(RC[-1])+1,MONTH(RC[-1]),DAY(RC[-1]))"
    Call mfc
    ' On décharge le formulaire
    Unload Me
End Sub/CODE]

exist'il un code qui pourrais remplacer derling?
Car en vba suis pas du tout calé

d'avance merci
 
Re : aide sur erreur VBA

Bosoir le fil, fr832, Roland M

Après avoir vu le classeur, je propose d'ajouter les 2 lignes en rouge dans la Sub mfc (module mefc)
Code:
Sub mfc()
    [B][COLOR="Red"]Dim Derlig As Long
    Derlig = Range("A" & Rows.Count).End(xlUp).Row + 1[/COLOR][/B]
    . . .
PS: c'est vrai que ça répète 2 lignes de la sub Cmdok_Click(), mais là on est tranquile.

A plus
 
Dernière édition:
- 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
2
Affichages
511
Réponses
3
Affichages
298
Réponses
35
Affichages
2 K
Réponses
6
Affichages
605
Réponses
3
Affichages
829
Retour