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

aide sur erreur vba

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

nrdz83

XLDnaute Impliqué
Bonjour à tous,
j'ai ce code que j'ai récupéré pour un programme de gestion de stock.
Par contre j'ai cette erreur, et je n'arrive pas à trouver d'ou cela provient.

D'avance merci pour votre aide. Mes amitiés😎

Code:
[COLOR="SeaGreen"]' Module    : UserForm1/remplirbdd
' Utilisation     :mettre à jour la base de données
'Call remplirbdd(£ligne1:=ligne  , £nomfeuille1:=nom de la feuille)[/COLOR]'-------------------------------------------------------------------------------------
[COLOR="red"]Private Sub remplirbdd(£ligne1 As Long, £nomfeuille1 As String)[/COLOR]
[COLOR="SeaGreen"]'Dim £Ctrl As Control
'Dim £coln As Long[/COLOR]
With Sheets(£nomfeuille1)
For Each £Ctrl In Me.Controls
    If TypeName(£Ctrl) = "ComboBox" Or TypeName(£Ctrl) = "TextBox" Then
    £coln = Val(Replace(£Ctrl.Name, TypeName(£Ctrl), ""))
                .Cells(£ligne1, £coln) = £Ctrl.Value
   End If
   If TypeName(£Ctrl) = "DTPicker" Then
        £coln = Val(Replace(£Ctrl.Name, TypeName(£Ctrl), ""))
        .Cells(£ligne1, £coln) = CStr(£Ctrl.Value)
        .Cells(£ligne1, £coln) = [COLOR="Red"]Format[/COLOR](.Cells(£ligne1, £coln), "dd/mm/yyyy")
   End If
   
Next £Ctrl
End With
End Sub
 
Re : aide sur erreur vba

Bonjour nrdz83,

je pense aue ton problème vient de cette ligne:
.Cells(£ligne1, £coln) = Format(.Cells(£ligne1, £coln), "dd/mm/yyyy")
essai comme ceci:
Code:
     .Cells(£ligne1, £coln[COLOR="Navy"]).NumberFormat [/COLOR]= "dd/mm/yyyy"

Avec un DTpicker cela donnerait ceci:
Code:
.Range("A" & derlign) = [COLOR="Navy"]CDate[/COLOR]([COLOR="navy"]Format[/COLOR](DTPicker1.Value, "dd/mm/yyyy"))

J'espère avoir pu t'éclairer, quoi que cela fait un petit moment que je me suis absenté du forum lol, je rouille!!! 😉
 
Re : aide sur erreur vba

bonjour alex 67800, merci pour tes lumières, ça fonctionne en partie maintenant je vais t'expliquer.
Effectivement la date provient d'un DTPicker, et si je met ton deuxieme code

Code:
.Range("A" & derlign) = CDate(Format(DTPicker1.Value, "dd/mm/yyyy"))
ça ne fonctionne pas.

Ton premier code
Code:
.Cells(£ligne1, £coln).NumberFormat = "dd/mm/yyyy"
Fonctionne impeccable. Sauf que le format date dans ma cellule se met sous dd/mm/yyyy 00:00 Et cela malgrés un format personnalisé rien ne change au format.

Je te remercie d'avance pour ton aide et tu peux compter sur nous, avec nos problèmes tu vas vite être derouillé lol

Amitiés 😎
 
Re : aide sur erreur vba

Bonsoir à tous je cherche a resoudre mon problème avec ce code que alex67800 m'a solutionné.
Code:
rivate Sub remplirbdd(£ligne1 As Long, £nomfeuille1 As String)
'Dim £Ctrl As Control
'Dim £coln As Long
With Sheets(£nomfeuille1)
For Each £Ctrl In Me.Controls
    If TypeName(£Ctrl) = "ComboBox" Or TypeName(£Ctrl) = "TextBox" Then
    £coln = Val(Replace(£Ctrl.Name, TypeName(£Ctrl), ""))
                .Cells(£ligne1, £coln) = £Ctrl.Value
   End If
   If TypeName(£Ctrl) = "DTPicker" Then
        £coln = Val(Replace(£Ctrl.Name, TypeName(£Ctrl), ""))
        .Cells(£ligne1, £coln) = CStr(£Ctrl.Value)
       [COLOR="Red"] .Cells(£ligne1, £coln).NumberFormat = "dd/mm/yyyy"[/COLOR] 
  End If
   
Next £Ctrl
End With
End Sub

j'ai le resultat sous ce format 27/05/2009 19:21:54

alors que moi je veux juste ce format 27/05/2009

j'ai essayé format personnalisé de la cellule mais àa ne fonctionne pas.

D'avance merci à tous amitiés 😎
 
Re : aide sur erreur vba

Salut Mister Bean 🙂

Ton code n'est pas bon à la première ligne 😉

il faut remplacer
Code:
.Cells(£ligne1, £coln) = CStr(£Ctrl.Value)

par
Code:
.Cells(£ligne1, £coln) = Format(£Ctrl.Value, "dd/mm/yyyy")

A+
 
Dernière modification par un modérateur:
Re : aide sur erreur vba

🙄bonsoir bruno m45 merci pour ton concours lorsque je mets ton code il se met en rouge avec un message erreur de compilation et la parenthese ici en rouge et en surbrillance
Code:
.Cells(£ligne1, £coln) = Format(£Ctrl.Value,[COLOR="Red"])[/COLOR], "dd/mm/yyyy")

merci encore pour tes lumières
 
Re : aide sur erreur vba

Re,

Ben oui a vouloir aller trop vite 🙄

Code corrigé dans le post précédent, il faut enlever ",)"

a+

Nota : au nombre de jours que tu as déjà passé sur ce forum,
je suis fort étonné que tu ne trouves pas l'erreur par toi même
 
Dernière modification par un modérateur:
Re : aide sur erreur vba

re bonsoir et merci bruno m45
aujourd'hui rien ne vas j'arrive à rien pour peuve mon graveur dvd qui a 4 mois vient de me lacher grrrrrrr
et la ce maudit code aussi
Code:
Private Sub remplirbdd(£ligne1 As Long, £nomfeuille1 As String)
'Dim £Ctrl As Control
'Dim £coln As Long
With Sheets(£nomfeuille1)
For Each £Ctrl In Me.Controls
    If TypeName(£Ctrl) = "ComboBox" Or TypeName(£Ctrl) = "TextBox" Then
    £coln = Val(Replace(£Ctrl.Name, TypeName(£Ctrl), ""))
                .Cells(£ligne1, £coln) = £Ctrl.Value
   End If
   If TypeName(£Ctrl) = "DTPicker" Then
        £coln = Val(Replace(£Ctrl.Name, TypeName(£Ctrl), ""))
        .Cells(£ligne1, £coln) = [COLOR="Red"]Format[/COLOR](£Ctrl.Value, "dd/mm/yyyy")
        .Cells(£ligne1, £coln).NumberFormat = "dd/mm/yyyy"
   End If
   
Next £Ctrl
End With
End Sub

Regarde ce code il bug encore j'ai beau essayé d'ou vient l'erreur je n'arrive à rien.
Merci encore pour ton aide, amitiés
 
Re : aide sur erreur vba

Bonsoir à tous,

Essayer :

Code:
.Cells(£ligne1, £coln) = [COLOR="Red"]CDate[/COLOR](£Ctrl.Value)
.Cells(£ligne1, £coln).NumberFormat = "dd/mm/yyyy"

sinon pourquoi pas :

Code:
.Cells(£ligne1, £coln) = £Ctrl.Value
.Cells(£ligne1, £coln).NumberFormat = "dd/mm/yyyy"

A+
 
Dernière édition:
Re : aide sur erreur vba

Juste comme ça 😛

Vu avec Nrdz83, c'était un problème de référence manquante

Et comme toujours une simple fonction comme Format() n'était du coup plus reconnue 🙄

Une fois les références manquantes décochées, cela marchait également pour le code que j'ai donné 😀

Voili, voilà
 
- 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
5
Affichages
708
Réponses
3
Affichages
354
  • Question Question
Microsoft 365 Erreur UBound
Réponses
4
Affichages
218
Réponses
4
Affichages
581
Réponses
4
Affichages
672
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…