Recherche de valeurs negative en VBA

M

Marion

Guest
Bonjour au forum

Dans un tableau compartant des codes et des valeurs négatives je voudrais rechercher les - et faire un nouvau tableau

Je joins un fichier

Merci de votre aide

A+Marion [file name=Marion1_20051105102849.zip size=2026]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Marion1_20051105102849.zip[/file]
 

Pièces jointes

  • Marion1_20051105102849.zip
    2 KB · Affichages: 32
B

bebere

Guest
bonjour
Marion,le Forum

à placer ds le code de la feuille
clic droit -> onglet feuille -> visualiser code

Private Sub Worksheet_Activate()
Dim Cel As Range, L As Byte
For Each Cel In Range('G4:G14')
If Cel < 0 Then
L = L + 1
Range('M' & L).Offset(3, 0).Value = Cel.Value
Range('L' & L).Offset(3, 0).Value = Range('B' & Cel.Row).Value
End If
Next Cel
End Sub
à bientôt :)
 

Ti_

Nous a quitté
Repose en paix
une solution simple et classique, avec quelques formules [file name=ValNeg.zip size=5155]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/ValNeg.zip[/file]
 

Pièces jointes

  • ValNeg.zip
    5 KB · Affichages: 45
M

Marion

Guest
Re bonjour

merci a tous les deux

la solution de bebere est tout a fait ce qu'il me faut


jel'ai adapté a mon fichier cela fonctionne mais le temps du calcul est trés long

Peut-on améliorer ce petit soucis

Merci encore

A+Marion
 
B

bebere

Guest
bonjour Marion,Ti
essaye le suivant
Private Sub Worksheet_Activate()
Dim L As Integer, C As Integer
Dim Tbl As Variant
Dim Cel As Range
For Each Cel In Range('H4:H14')
If Cel < 0 Then
L = L + 1
End If
Next Cel
ReDim Tbl(1 To L, 1 To 2)
L = 0
For Each Cel In Range('H4:H14')
If Cel < 0 Then
L = L + 1
Tbl(L, 1) = Cells(Cel.Row, 3).Value '3 colonne C
Tbl(L, 2) = Cells(Cel.Row, 8).Value '8 colonne H
End If
Next Cel
For L = 1 To UBound(Tbl, 1)
For C = 1 To UBound(Tbl, 2)
Cells(3, 10).Offset(L, C).Value = Tbl(L, C)
Next C
Next L
End Sub
à bientôt
 
B

bebere

Guest
bonsoir Marion
si bug à redim ,la variable L=0
regarde si Range('H4:H14') est bien ta colonne de chiffres
et aussi les 2 lignes suivantes
Tbl(L, 1) = Cells(Cel.Row, 3).Value '3 colonne C
Tbl(L, 2) = Cells(Cel.Row, 8).Value '8 colonne H
à bientôt :)
 

Discussions similaires

Statistiques des forums

Discussions
312 500
Messages
2 089 005
Membres
104 003
dernier inscrit
adyady__