Changer la valeur d'une cellule en chiffre avec une macro

Résolu
Barahaoua Messages postés 88 Date d'inscription   Statut Membre Dernière intervention   -  
Barahaoua Messages postés 88 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour svp les amis j'ai une colonne ou j'ai des formule qui cherche une donné d'une autre feuille et ce que je voudrais svp c'est pouvoir sélectionner cette cellule et changer sa valeur en chiffre standard

j'ai fais cette macro mais le problème que je sais pas comment intégré la condition que je veux changer que la cellule que j'ai sélectionné
Dim Cellule As Range

'Parcourir les cellules de la plage utilisée
For Each Cellule In ActiveSheet.UsedRange
'Traiter uniquement les cellules possédant une formule
If Cellule.HasFormula Then
Cellule.Formula = Cellule.Value
End If
Next Cellule




MERCI
A voir également:

4 réponses

melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   155
 
Bonjour,

essaie ca :

Dim Cellule As Range

'Parcourir les cellules de la plage utilisée
For Each Cellule In ActiveSheet.UsedRange
'Traiter uniquement les cellules possédant une formule
If Cellule.HasFormula Then
Cellule.copy
cellule.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
End If
Next Cellule
0
Barahaoua Messages postés 88 Date d'inscription   Statut Membre Dernière intervention  
 
merci beaucoup melanie
0
Barahaoua Messages postés 88 Date d'inscription   Statut Membre Dernière intervention  
 
Mélanie j'ai essayer la macro et ça marche bien sauf que il me change tous les formule de la colonne en valeur standard

En faite je vais t'expliquer ce que je voudrais faire exactement s'il te plait

actuellement je suis en cours de réalisation d'un outil de simulation ou j'ai :

une feuille "Accueil" dans laquelle je veux entrés le une donnée dans la cellule D8 et une donnée dans la cellule D15 c'est donner je veux que je puisse cliquer sur un bouton et que la donnée que j'ai dans D8 sera coller dans la colonne C de la feuille "Commentaire" et la Donnée de D15 sera collé dans la colonne B de la feuille "Commentaire " une fois que j'ai fais ça ; j’exécute la macro de simulation qui agit sur la feuille "Usine" pour que la fin de la simulation , je vais avoir une donnée dans la cellule O4 de la feuille "Usine" et cette donnée je voudrai la coller sur la même ligne ou j'ai coller les premiére Données sur la feuille " Commentaire "

a chaque enregistrement du fichier je veux que les données qui sont saisie dans les cellules de la feuille "Commentaire " reste et que si j'ai rentrés des nouvelles données et jai lancer une autre simulation ; les nouvelles informations seront enregistré dans la ligne suivante dans la feuille "commentaire"

je vais te mettre stp le fichier en pièce jointe pour comprendre ce que je suis entrain de dire

https://www.cjoint.com/c/FHkh2yLEgFh

merci

cordialement
0
melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   155
 
Bonjour,

Là c'est plus clair.

Et j'ai 2 solutions à te proposer

Solution 1 : étape 1 copie des cellules, 2°°) appel de la macro, 3°) Copie de la feuille usine


Sub copiecoller()
'définition d'une variable
i = 2
'boucle qui va rechercher la première ligne disponible
Do While Sheets("Commentaires").Cells(i, 2) <> ""
i = i + 1
Loop

'les 2 lignes qui vont copier tes cellules
Sheets("Accueil").Cells(8, 4).Copy Sheets("Commentaires").Cells(i, 3)
Sheets("Accueil").Cells(15, 4).Copy Sheets("Commentaires").Cells(i, 2)

'lancement de la macro nommée simulation
call simulation 'tu remplaces simulation par le nom de ta macro

sheets("Usine").cells(4,15).copy Sheets("Commentaires").Cells(i, 4)

End Sub






<gras>Solution 2 : étape 1 copie des cellules

Sub copiecoller()
'définition d'une variable
i = 2
'boucle qui va rechercher la première ligne disponible
Do While Sheets("Commentaires").Cells(i, 2) <> ""
i = i + 1
Loop

'les 2 lignes qui vont copier tes cellules
Sheets("Accueil").Cells(8, 4).Copy Sheets("Commentaires").Cells(i, 3)
Sheets("Accueil").Cells(15, 4).Copy Sheets("Commentaires").Cells(i, 2)

End Sub


là manuellement tu lances la macro simulation
et tu ajoutes à la fin de la macro simulation :


i = 2
'boucle qui va rechercher la première ligne disponible
Do While Sheets("Commentaires").Cells(i, 2) <> ""
i = i + 1
Loop


sheets("Usine").cells(4,15).copy Sheets("Commentaires").Cells(i-1, 4)
0
Barahaoua Messages postés 88 Date d'inscription   Statut Membre Dernière intervention  
 
merci Melanie je vais essayer ca maintenant merci beaucoup pour cette réponse rapide et efficace
0
Barahaoua Messages postés 88 Date d'inscription   Statut Membre Dernière intervention  
 



Mélanie j'ai essayer le premier mais malheureusement il me récupère pas la valeur de O4 de la feuille" usine"
regarde ce qu'il me fait

merci
je vais assayer maintenant les autres solutions
0
melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   155
 
Re,

je regarde
0
melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   155
 
J'ai trouvé le problème et je l'ai corrigé :
https://www.cjoint.com/c/FHkiQU5ShHi

La macro se trouve dans module 1 et se nomme copier coller
0
Barahaoua Messages postés 88 Date d'inscription   Statut Membre Dernière intervention  
 
Mélanie avec la deuxiéme solution aussi j'ai le même soucie sa m'affiche pas la valeur il m'affiche ça : #REF!
0
melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   155
 
As-tu essayé le fichier que je t'ai donné ?
https://www.cjoint.com/c/FHkiQU5ShHi
0
melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   155
 
ce fichier : https://www.cjoint.com/c/FHkiQU5ShHi

car il faut modifier le code comme ca :

i = 2
'boucle qui va rechercher la première ligne disponible
Do While Sheets("Commentaires").Cells(i, 2) <> ""
i = i + 1
Loop
Sheets("Commentaires").Cells(i-1, 4) = sheets("Usine").cells(4,15).value
0
melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   155
 
Parce que tu n'as pas pris la dernière version et que tu n'as pas fait la modification indiquée.
Essaie avec ce fichier stp :
https://www.cjoint.com/c/FHkjeBqUSPi
0
Barahaoua Messages postés 88 Date d'inscription   Statut Membre Dernière intervention  
 
Merci Mélanie ça marche très bien

merci beaucoup pour ton aide et t'est réponses

je te souhaite bon courage

cordialement
0
Barahaoua Messages postés 88 Date d'inscription   Statut Membre Dernière intervention  
 
c 'est bon merci Mélanie j'ai réussie a le faire
0