macro délimitée a certaines zones de la feuille

Z

zeltron

Guest
Bonjour le Forum,

Voici mon pb:

Sur le fichier joint, j'ai un bouton qui colorie les cellules actives quand on clique dessus. ( Hervé du Forum, m'a beaucoup aidé pour cela je le remercie encore). Mon pb, est que la macro de ce bouton fonctionne pour toutes les cellules actives de la feuille or j'aimerais que cela ne soit possible que pour certaines zônes de la feuille. Pouvez vous m'aider?

Je vous joint le fichier afin que cela soit + compréhensible.

Par avance merci

Cordialement

Zeltron [file name=Exemplezones.zip size=9534]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Exemplezones.zip[/file]
 

Pièces jointes

  • Exemplezones.zip
    9.3 KB · Affichages: 12
Z

zeltron

Guest
Merci tiatak, pour ta proposition. Mais je ne souhaites pas l'adoptée car, dans mon projet j'ai plusieurs boutons avec des valeurs particulières. Simplement je souhaiterais que leur macro ne puisse s'appliquer qu'a certaines zones de la feuille.

Quelq'un aurait il une solution?

Par avance merci

Cordialement Zeltron
 
Z

zeltron

Guest
Je te remercie beaucoup, c'est exactement ce que je cherchais. Cependant, peux tu m'expliquer le code, je ne vois pas où tu déremine les zones, cela me permettrais de mieux le comprendre. Comment détermines tu les coordonnées des zones 1/2/3et 4, pour qu'elles correspondent.

Je te remercie d'avance, je suis débutant et cela me permettrais de mieux progresser.

Encore merci, peux tu m'aider?

Cordialement

Zeltron
 
J

JACK

Guest
bonsoir à tous

il y a un petit soucis avec ton programme
en effet si on sélectionne une cellule des zones 1 2 3 ou 4 et une ou plusieurs cellules hors zones la macro fonctionne malgré tout ..........
comment faire pour qu'elle ne fonctionne que dans les zones

bonne soirée
a plus
jack
 
J

JACK

Guest
bonsoir à tous

il y a un petit soucis avec ton programme
en effet si on sélectionne une cellule des zones 1 2 3 ou 4 et une ou plusieurs cellules hors zones la macro fonctionne malgré tout ..........
comment faire pour qu'elle ne fonctionne que dans les zones

bonne soirée
a plus
jack
 
Z

zeltron

Guest
Excusez moi, mais je n'y arrive pas.

Le code VBA de la feuille est:

Private Sub CommandButton1_Click()
Conges = ActiveSheet.OLEObjects('CommandButton1').Object.Caption
Couleur = ActiveSheet.OLEObjects('CommandButton1').Object.BackColor
MiseEnForme
End Sub
Sub MiseEnForme()
Dim c As Range

For Each c In Selection
c.Value = Conges
c.Interior.Color = Couleur
Next c
End Sub


Private Sub CommandButton4_Click()
Dim i As Byte
For i = 1 To 3
ActiveSheet.OLEObjects('CommandButton' & i).Object.Caption = Cells(i, 2)
ActiveSheet.OLEObjects('CommandButton' & i).Object.BackColor = QBColor(Cells(i, 3))
Next i
End Sub

Private Sub CommandButton2_Click()
Conges = ActiveSheet.OLEObjects('CommandButton2').Object.Caption
Couleur = ActiveSheet.OLEObjects('CommandButton2').Object.BackColor
MiseEnForme
End Sub

Private Sub CommandButton3_Click()
Conges = ActiveSheet.OLEObjects('CommandButton3').Object.Caption
Couleur = ActiveSheet.OLEObjects('CommandButton3').Object.BackColor
MiseEnForme
End Sub


Ce code permet également de paramètrer les valeurs et les couleurs des boutons, comme vous le verrez dans mon fichier joint. Où placer l'écriture concernant le nom de la zône et comment passer cette écriture pouvez vous m'aider?

Par avance merci

zeltron [file name=Exempledetails.zip size=18733]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Exempledetails.zip[/file]
 

Pièces jointes

  • Exempledetails.zip
    18.3 KB · Affichages: 12

Hervé

XLDnaute Barbatruc
Bonjour tout le monde :)

Ma petite pierre à l'edifice :

la macro suivante permet de colorier un groupe de cellule d'un coup, seulement compris en zone 1 ou zone 2.

Sub MiseEnForme(Bouton As Byte)
Dim c As Range

       
For Each c In Selection
           
If Not Intersect(c, Union(Range('Zone1'), Range('Zone2'))) Is Nothing Then  ' vérifie que la cellule est dans les bonnes zones
                c.Value = ActiveSheet.OLEObjects('CommandButton' & Bouton).Object.Caption
                c.Interior.Color = ActiveSheet.OLEObjects('CommandButton' & Bouton).Object.BackColor
           
End If
       
Next c
End Sub

salut
 
J

jack

Guest
bonsoir tatiak
sympa ta macro mais quel code adopter si on sélectionne plusieurs cellules dans la zone ex : I3:M13 dans la zone 1 pour quand cliquant sur trav. les cellules concernées passent en bleu et 'trav.'
c'est à dire que cela ne se fasse pas cellule par cellule mais par plage de cellules dans la zone

merci pour tout
bonne soirée

slts
jack
 
J

jack

Guest
bonsoir
comment faire pour rajouter un bouton qui effacerait toutes les données sélectionnées dans la zone concernée sorte de bouton de correction pour annuler une mauvaise saisie par exemple


et quel modification faut il apporter au code pour que tout fonctionne
merci de votrre aide à tous

bonne soirée

slts

jack
 
Z

zeltron

Guest
Ce n'est pas une petite pierre c'est un mehnir!!!!

Je vous remercie tous énormément, c'est exactement ce que je souhaitais. Je vais vraiment étudier vos codes pour m'améliorer. Mon projet progresse.

Je n'hésiterais pas à refaire appel a vous tous si je suis coincé.

Question: je sais qu'il faut rester dans le même fil pour le même thème. Cela même si c'est dans plusieurs jours? Vous le verrez quand même, ou faudra t il que je crée un fil complémentaire?

Encore un grand merci !!!

Salutations!!!! :woohoo:

Cordialement

Zeltron
 

Hervé

XLDnaute Barbatruc
re tout le monde

T'inquiète pas, on suit les fils sur XLD.

Encore une autre petite pierre :)

Ajout d'un bouton correction qui permet comme son nom ne l'indique pas d'annuler la derniere saisie (seulement la dernière attention).

salut
[file name=Exempledetails3.zip size=23283]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Exempledetails3.zip[/file]

Message édité par: hervé, à: 02/11/2005 18:10
 

Pièces jointes

  • Exempledetails3.zip
    22.7 KB · Affichages: 18

Discussions similaires

Statistiques des forums

Discussions
312 963
Messages
2 093 998
Membres
105 906
dernier inscrit
aifa