Recherche d'un nombre puis restitution des données en VBA

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 !

Lionelkoch

XLDnaute Nouveau
Bonjour,

j'essaye d'ecrire une macro pour verfier dans une table de chiffres, si il y a des données non comprises entre -0.0001 et 0.0001 si c'est le cas, ecrire sur une feuille deux donnes qui se trouvent sur la meme ligne et la meme colonne que cette donnée.

Voici le code, mais j'ai un petit souci que je n'arrive pas a résoudre. le souci est la "Sheets("Test_Variances").Cells(NumRow, 1) = Cells(i, 3)"

Sub start()
Dim NumRow As Integer
Dim FirstRow As Integer, FirstCol As Integer, LastRow As Integer, LastCol As Integer
Dim FirstMonth As Byte, ColAccount As Integer, BRU As String
Dim NbSkip As Long

NumRow = 2
NbSkip = 0
FirstMonth = 1

'Variance
Sheets("Variances").Select
FirstCol = 5
LastCol = 43
FirstRow = 16
LastRow = Range("LR_VAR")
ColAccount = 3
WriteFlatFile FirstRow, FirstCol, LastRow, LastCol, FirstMonth, 1, ColAccount

End Sub

Sub WriteFlatFile(FirstRow As Integer, FirstCol As Integer, LastRow As Integer, LastCol As Integer, Mo As Byte, MoInc As Byte, ColAccount)
Dim n As Integer, i As Integer, M As Byte, ICP As String, pos As Byte
Dim CodeAccount As String
Application.DecimalSeparator = "."
'Application.ScreenUpdating = False
Cells(FirstRow, FirstCol).Select
M = Mo
'Sheets("Test_Variances").Select
'Range("A1") = "ERROR ENTITIES"
For n = FirstCol To LastCol Step MoInc
For i = FirstRow To LastRow
If Not IsError(Cells(i, n)) Then
Cells(i, n).Select
If Selection <> 0 Then
'If Selection < -0.00001 Or Selection > 0.00001 Then
NbSkip = NbSkip + 1
Else
Sheets("Test_Variances").Cells(NumRow, 1) = Cells(i, 3)
NumRow = NumRow + 1
End If
End If
Next i
M = M + 1
Next n
End Sub

Pour info j'ai recopié un bout de code d'une macro qui genere des données en fonction de chiffres trouvés dans un zone.

Si il y a des gens qui peuvent aider ca serait super.
 
Re : Recherche d'un nombre puis restitution des données en VBA

bonjour Lionelkoch et bienvenue sur XLD

A 1ere vue Numrow doit etre defini en Public puisqu'utilisé dans les 2 sub

Code:
Public NumRow as integer

En tete d'un module standard

Autre solution : le transmettre en parametre a la 2eme sub

Edit : salut masterdisco
 
Re : Recherche d'un nombre puis restitution des données en VBA

Bonjour 🙂

Ok, merci pour ces points, j'ai bougé le NumRow en public. par contre maintenant j'ai un overfow, mais cela ne marche tjs pas.

Bon en fait j'ai mis un fichier quir esemble au mien,en fait meme structure, sauf que le mien a plus de 1100 lignes et va jusqu'a la colonne AA.

En gros ce que j'essaye de faire est que Excel lise tous les chiffres et des que il trouve un donne qui n'est pas comprise en -0.0001 et 0.0001 que il me mette les donnes dans l'onglet Test_variance comme moi je l'ai fait.

Alors oui la macro est complexe et confuse car j'ai repris ede sbouts a droite et a gauche.
 

Pièces jointes

- 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

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
272
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
88
Réponses
3
Affichages
544
Retour