Comment récupérer les informations d'une cellule (son format) et les traiter

cigogne

XLDnaute Nouveau
Bonsoir à tous.

Voila j'ai un petit inventaire de pièce.
J'ai une colonne quantité. Pour chaque pièce, j'ai associé une mise en forme conditionnelle en fonction des délais de livraison de la consommation etc.

Par exemple :
Verre : mise en forme conditionnelle si 3>=quantite>2 alors couleur de la cellule orange ; si 2>=quantité alors couleur rouge

fourchette : mise en forme conditionnelle si 5>=quantite>3 alors couleur de la cellule orange ; si 3>=quantité alors couleur rouge (délai d'appro plus long donc faut prévoir ;) )

Je voudrais savoir comment faire pour récupérer l'information de la couleur interieure des cellules.
Voila ce que j'ai fait mais je suis un débutant dans vba ... :(

Le but etant d'envoyer un mail des que j'ai une cellule rouge ou orange

Code:
' Traduction mise en forme conditionnelle
Dim Cel As Range
Dim Quantite As String
Dim F As Worksheet
Dim verifie As String
Quantite = "I16:I100"
For Each Cel In F.Range(Quantite)

' des que la couleur interieure d'une cellule est .colorindex 45 ou 3 alors verifie = True
Select Case Cel.Value
Interior.ColorIndex = 45
Interior.ColorIndex = 3
verifie = True

' Boucle mise en forme conditionnelle
If verifie = True Then

    ' Envoi du mail
    Dim MailAd As String
    Dim Msg As String
    Dim Subj As String
    Dim URLto As String
    MailAd = Range("c6")
    Subj = "Commande artciles"
    Msg = "Attention : Pensez à commander les articles"
    URLto = "mailto:" & MailAd & "?subject=" & Subj & "&body=" & Msg
    ActiveWorkbook.FollowHyperlink Address:=URLto

    ' Attente ouverture outlook
    Dim Début As Long, Fin As Long, Chrono As Long
    Début = Timer
    Fin = Début + 2
    Do Until Timer >= Fin
    DoEvents
    Loop
 
    ' Envoi du message
    SendKeys ("%s")
End If

' Fermeture et enregistrement du classeur
ActiveWorkbook.Save
Application.Quit

End Sub

Je vous remerci par avance de l'aide que vous pourrez m'apporter.

Cdlt.
Cigogne.

P.S je travaille sous Excel 2003 au cas où
 

cigogne

XLDnaute Nouveau
Re : Comment récupérer les informations d'une cellule (son format) et les traiter

salut seb,
je ne vois rien en rapport avec une plage de cellule dans ton code.
Que veux-tu faire de I12 à I49 ?

sinon essai ça à la place si j'ai tout compris :

Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Commande As Range
Dim F As Worksheet      
UserForm1.Show

' rep = InputBox("date")
' Range(Y28) = rep

' Définition des variables
Set F = Worksheets("Commande Out XXX")
Set Commande = F.Range("I12:I49")
        
    For Each Cel In Commande

    ' Recherche des valeurs nulles
        If Cel.Value = "" Then
            verifie = True
            Exit For        ' Mis pour sortir de la boucle
        End If
    Next Cel               ' Traitement de la cellule suivante
        
    ' Boucle mise en forme conditionnelle
    If verifie = True Then
        Exit Sub
    End If
MailAvecOEouWinMail1

Windows("Gestion Stock Ressorts.xls").Activate
ActiveWorkbook.Save
ActiveWindow.Close

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
313 769
Messages
2 102 234
Membres
108 181
dernier inscrit
Chr1sD