Bonjour, voila je souhaiterai lors de l'enregistrement sur mon tableau que le format nombre soit monétaire
ci joint mon bout de code
Private Sub BtnAenregistrer_Click()
Ref = Me.TxtARefArticles
With Sheets("Base_Articles")
Set trouvé = .Range("TblBaseArticles").Columns(1).Find(Ref, lookat:=xlWhole, LookIn:=xlValues)
If trouvé Is Nothing Then 'il s'agit d'un nouvelle articles
derlig = .Range("A" & .Rows.Count).End(xlUp).Row + 1 'on se positionne sur la dernière ligne
Else 'existe déjà
derlig = trouvé.Row
If MsgBox("Souhaitez vous modifier l'article ?", vbYesNo) = vbNo Then Exit Sub
End If
.Range("A" & derlig) = TxtARefArticles
.Range("B" & derlig) = CboAFamille
.Range("C" & derlig) = CboASousfamille
.Range("D" & derlig) = TxtADesignation
.Range("E" & derlig) = CboAFournisseur
.Range("F" & derlig) = TxtALongueurcolisage
.Range("G" & derlig) = TxtALargeurcolisage
.Range("H" & derlig) = TxtAHauteurcolisage
.Range("I" & derlig) = TxtACréele
.Range("J" & derlig) = TxtANotes
.Range("K" & derlig) = TxtADelaislivraison
.Range("L" & derlig) = TxtAFraistransport
.Range("M" & derlig) = TxtAFacturation
.Range("N" & derlig) = CboAModedegestion
.Range("O" & derlig) = TxtAminicommande
.Range("P" & derlig) = TxtAPrixUnitHT ' => données à afficher en format Euros lors de la saisie dans le text box et lors de l'enregistrement que sont format se mette en monétaire dans le tableau source
J'ai essaye un code avec .NumberFormat = "#,##0.00 $" mais je n'y arrive pas, il me manque une déclaration de variable je pense
lol ce n'est plus un feuilleton mais un roman :/
Alors écoute je viens de tester ton fichier, je suis persuadé qu'il y a un soucis de version excel ou de verrouillage excel sur mon poste de travail
Car le fichier que tu m'envois plante également :/
j'ai trouvé le soucis regarde a prioris ca serai lié à ca je l'ai es mis en commentaire et j'ai pu modifier une commande
'WshBCVierge.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
'"F:\Exportation\BC\ BC " & Range("I3") & Range("G7") & ".pdf", Quality:=xlQualityStandard, _
'IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
Par contre il faut que j'effectue tes modification sur ma base source alors...
Si c'est l'instruction qui plante essaye en précisant les noms d'objets Worksheet (encore appelés à tort CodeName) devant les Range.
Et comme du coup ça fait lourd, raccourcis les Range("adresse") en [adresse]
Quel est le nouveau souci ?
Alors là on n'a plus de solution de rechange.
Que disent des espions sur les différentes parties de l'expression ?
Je suis de plus en plus fondé à croire que c'est une erreur due à des bogues système…
Il faudrait arriver à reproduire le problème sur une procédure très courte et soumettre le problème à Microsoft.
Ça a l'air d'être lié à l'agrandissement en nombre de lignes d'un ListObject, puisque ça plante en l'ayant engagé par deux voies différentes: par ajout d'un membre à sa collection ListRows, et maintenant par renseignement de la 1ère ligne qui suit le tableau qu'il représente.
Je ne sais pas interpréter le résultat de l'espion ce que je peux te donner c'est ceci en mettant un point d'arret comme ceci, je ne sais pas si ca peut t'aider
Mets des espions plus détaillés, c'est compliqué de naviguer parmi toutes les propriétés.
Que dit CLsC.PlgTablo.Address(External:=True) au moment du plantage par exemple ? Et aussi juste avant avec un point d'arrêt ?
Et CLsC.PlgTablo.Rows.Count ? Enfin tous les bouts d'expressions qui doivent désigner une simple valeur et non un objet ?
Est-ce que, dans un nouveau classeur muni d'un tableau Excel, on arrive à ajouter une ligne par une macro toute simple en utilisant des variables As ListObject, As ListRows, As Range ?
je viens de rentrer à mon domicile je ne peux effectuer cette analyse car la projet fonctionne chez moi c'est un truc de dingue :/
je vais essayer de regarder un tuto ou deux pour essayer de bien comprendre ton besoin avec les espions et les points d'arrêts et je ferais la manip que demain au bureau car la je ne sais pas si ca te sortira des erreur vu que ca fonctionne
ecoute j'ai mis 2 espions et un point d'arret comme ci et je fais avancer étape par étape, mais je ne vois pas trop ce que tu souhaiterais voir comme résultat, je vois 18 sur la 2ème ligne qui correspond bien à 18 lignes sur ma wshsuivicommande mais sinon c'est le néant je fais F8 pour avancer en pas à pas mais ... vu que je suis chez moi rien ne parait d'anormal