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

Interdire valeur négative sous forme de macro

mimil

XLDnaute Junior
Bonjour,

Comment écrire une macro pour dire que dans ma feuille dés qu'il ya une valeur negative
un message d'alerte s'affiche ( ATTENTION VALEUR NEGATIVE) ??

Sachant que j'utilise des combobox et textbox dans ma macro !

Merci
 

mimil

XLDnaute Junior
Re : Interdire valeur négative sous forme de macro

Un grand Merci Pierrot !!

J'ai une autre question qui n'a pas le mm rapport !!

Par rapport a ma PJ (aide__1)

Je ne sais pas comment ecrire pour dire que lorsque je choisi un mois de conso la valeur de la textbox s'affiche sur tte les lignes

Plus besoin de choisir un Bat

je choisi mois conso OCT puis je rentre une valeur dans la texbox et elle s'incremente dans les cellules de P7 a P14
Ainsi de suite pour les autres mois !!

Je pense qu'il ne faut pas toucher a la variable Col
mais modifié la varible li

MERCI
 

Pierrot93

XLDnaute Barbatruc
Re : Interdire valeur négative sous forme de macro

Re,

pas tout compris et ton bleu pas top... vois rien sur mon écran... regarde du coté de la propriété "listindex" de la combo, en fonction de l'élément sélectionné, doit te permettre de déterminer la colonne concerné, enfin si ton fichier est organisé de façon logique.....
 

mimil

XLDnaute Junior
Re : Interdire valeur négative sous forme de macro

Ta raison ! mais sinon comment ecrire en macro

Si je rentre une valeur dans ma textbox en E7 par exemple , elle s'incremente sur chaque ligne de ma colonne

C pour simplifié !! car sinon je dois rsaisir une valeur et valider sur chaque ligne

Car sur mon vrai fichier j'ai 150 lignes :S
 

mimil

XLDnaute Junior
Re : Interdire valeur négative sous forme de macro

Voici l'ecriture


li = Me.ComboBox1.ListIndex + 7 'définit la ligne qui correspond au bâtiment
col = (Me.ComboBox2.ListIndex) * 4 + 18 'définit la colonne (récupère la valeur stockée dans la colonne 1 de la ComboBox1)

Select Case col 'agit en fonction de la colonne col
Case 18 To 46 'si colonne K

End Select 'fin de l 'action en fonction de la cellule

With Sheets("Données")
Sheets("Données").Cells(li, col).ClearComments 'supprime un éventuel commentaire dasns la cellule (li, col)
Sheets("Données").Cells(li, col).Value = (Me.TextBox3.Value) 'place la valeur de la TextBox 3
End With


Cette ecriture me permet de choisir le bati puis le mois je rentre une valeur dans la textbox et elle s'incremente dans la cellule que je veux



Moi je veux choisir un mois, saisir valeur et elle s'incremente sur tout le mois

J'espére que c compréhensible
 

Pierrot93

XLDnaute Barbatruc
Re : Interdire valeur négative sous forme de macro

Re,

pour ce cas, peut être ainsi :
Code:
Sheets("Données").Cells(li, col)Resize(8).Value = Me.TextBox3.Value 'place la valeur de la TextBox 3

li étant valorisé à 7
 

laetitia90

XLDnaute Barbatruc
Re : Interdire valeur négative sous forme de macro

bonjour tous
en complement du code de l'ami Pierrot
on peut essayer cela dans la mesure au depart les valeurs sont positives
Code:
Option Explicit
Dim x As Variant
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column < 5 Or Target.Count > 1 Then Exit Sub
If IsNumeric(Target) And Target.Value < 0 Then Target = x
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
x = Target.Value
End Sub

oups annuler j'avais pas vu la 2 pages
 
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…