Formule qui débogue quand je mets une valeur négative

Bonjour,

Après de multiple tentative je n'arrive pas à faire fonctionner mon code car la ligne : Cells(NumLigneVL, 8).Formula = FormuleVLC; La ligne débogue.

Sub NouvelOngletPiano()

Dim NomdelaFeuille As String

Dim NomVeille As String

Dim NomavantVeille As String

Dim Veille As String

Dim NumLigneSous As Integer

Dim FormuleSous As String

Dim NumLigneSous2 As Integer

Dim FormuleSous2 As String

Dim FormuleVLC As String

Dim NumLigneVL As Integer

Dim VL As Integer

Dim NomTableau As String

Dim ListObjects As String

Dim VeilleValue As Variant

'

Application.ScreenUpdating = False ' permet d'activer le mode turbo, évite les scintillements

Application.EnableEvents = False

Application.DisplayAlerts = False

'

Sheets(Sheets.Count).Copy After:=Sheets(Sheets.Count)

NomdelaFeuille = InputBox("Nom de l'onglet ?", "Nom de l'onglet")

Sheets(Sheets.Count).Name = NomdelaFeuille

'

Sheets(NomdelaFeuille).Activate

Veille = Sheets(Sheets.Count).Name

NomVeille = Sheets(Sheets.Count - 1).Name

NomavantVeille = Sheets(Sheets.Count - 2).Name

Range("H:H").Select

Selection.Replace What:=NomavantVeille, Replacement:=NomVeille, LookAt:=xlPart, _

SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _

ReplaceFormat:=False

'

'

' Souscriptions

NumLigneSous = Cells.Find(What:="Souscriptions", After:=ActiveCell, LookIn:=xlFormulas, _

LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _

MatchCase:=False, SearchFormat:=False).Row

Souscription = InputBox("Souscriptions ?", "Souscriptions")

'

FormuleSous = Cells(NumLigneSous, 8).Formula

FormuleSous = "=" & Souscription & "*'" & Veille & "'!VLC"

Cells(NumLigneSous, 8).Formula = FormuleSous

'

'

' Collecte du jour

NumLigneSous2 = Cells.Find(What:="Collecte jour", After:=ActiveCell, LookIn:=xlFormulas, _

LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _

MatchCase:=False, SearchFormat:=False).Row

'

FormuleSous2 = "=" & Souscription

Cells(NumLigneSous2, 8).Formula = FormuleSous2

'

' Récupération de collecte jour de l'onglet précédent pour calcul Nb de parts

VeilleValue = Sheets(NomVeille).Cells(NumLigneSous2, 8).Value

'

' Nb de parts

NumLigneVL = Cells.Find(What:="Nb de parts", After:=ActiveCell, LookIn:=xlFormulas, _

LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _

MatchCase:=False, SearchFormat:=False).Row

FormuleVLC = Cells(NumLigneVL, 8).Formula & " + " & IIf(VeilleValue < 0, -VeilleValue, VeilleValue)

Cells(NumLigneVL, 8).Formula = FormuleVLC

'

'

Application.EnableEvents = True

Application.DisplayAlerts = True

Application.ScreenUpdating = True ' permet de désactiver le mode turbo

'

With Sheets(NomdelaFeuille)

.ListObjects(1).Name = "Tableau" & NomdelaFeuille

End With

'

End Sub

bonjour,

peux-tu mettre un fichier exemple dans lequel on peut reproduire le problème ?

bonjour,

merci pour votre réponse je me sens moins seul haha.

Voici le fichier n'hésiter pas à me demander si vous avez besoin d'autre explication. Je ne sais pas si je suis assez clair dans le fichier.

re-bonjour,

avec ce fichier je ne vois pas comment reproduire le problème. Il y a des liens vers d'autres fichiers et les données sont absentes. La macro n'est pas disponible, la fonction FSD non plus.

ex1

Bonjour,

Excuser moi je n'ai pas eu le temps de vous faire cela.

Voila le document!

:)

bonjour,

merci pour le fichier. Comme il s'agit d'un format xlsx, les macros et les fonctions personnalisées n'y sont pas. J'ai donc copié ton code dans le fichier et lancé la macro, (nom d'onglet 260723 et 15000 souscriptions) je n'ai pas d'erreur. Donc merci de me dire comment reproduire l'erreur.

je me demande si tu n'as pas tout simplement un problème à l'introduction des données dans les inputbox VBA(introduis tes données chiffrées décimales avec un point décimal (au lieu de la virgule) et sans le séparateur des milliers)

Bonjour,

je viens de le faire avec un chiffre négatif et décimales et ca ne fonctionne pas.

De plus, les dates dans les formules excel qui prennent les dates de la veille par exemple : celle des liquidités ne prennent pas toujours celle de l'onglet précédent, je ne comprend pas pourquoi..

Merci de votre réactivité!

re-bonjour,

je ne parviens pas à reproduire le problème avec un nombre négatif. Pour ce qui est des dates, la date n'est pas remplacée si la date de l'avant-veille n'est pas trouvée dans les formules, ou si en remplaçant la date dans une formule cela provoque une erreur de formule.

re-bonjour,

j'ai pu remarquer qu'avec des chiffres rond qu'ils soient négatif ou positif cela fonctionne. Mais malheureusement les chiffres décimaux ne fonctionne pas

auriez-vous des idées concernant cela?

bonjour,

as-tu tenu compte de ma remarque concernant l'introduction d'un nombre décimal dans un inputbox (utilise le point et non la virgule) ? Si oui, merci de me dire précisément quels sont les caractères introduits.

oui tout à fait, dans le premier onglet je mets la date du jour à laquelle on la calcule et dans l'onglet souscription j'ai essayé de mettre un point et non pas une virgule et pareil pour l'espacement. Rien à faire cela ne fonctionne toujours pas

merci de me dire précisément quels sont les caractères introduits.

la séquence exacte, pas une description...

Rechercher des sujets similaires à "formule qui debogue quand mets valeur negative"