Probleme d'insertion valeur & formul dans cellule

  • Initiateur de la discussion Fab61
  • Date de début
F

Fab61

Guest
Bon décidement ce matin j'ai du mal et je vois pas d'ou viens le probleme !!

Je me selection sur ma derniere ligne afin d'i appliquer une Formule en B2 et mettre une valeur de '01' dans C3 et ensuite recopier la valeur la formule en tant que valeur (pour ne plus avoir la formule)

voici mon code :

Code:
Range('A65000').End(xlUp).Offset(0, 0).Select

ActiveCell.EntireRow.Offset(0, 0).Range('C1').Select
ActiveCell.FormulaR1C1 = '01'

Range('A65000').End(xlUp).Offset(0, 0).Select
ActiveCell.EntireRow.Offset(0, 0).Range('B1').Select
ActiveCell.FormulaR1C1 = '=IF(ISBLANK(RC[6]),'''',RC[6]&'' / ''&RC[1])'
For Each c In Columns('B').SpecialCells(xlCellTypeFormulas, 23)
        c = c.Value
        Next c

LockUnlockWorkSheet shtEnCours, enLock
Range('A65000').End(xlUp).Offset(0, 0).Select

Mias le truc c'est qu'il ne me fait pas ceu que je voudrai il me recolle pas la formule en valeur et la formule il la met en A1 !.

Merci de vos réponse
 

Bebere

XLDnaute Barbatruc
Re:probleme d'insertion valeur & formul dans cell

bonjour Fab,le Forum
essaye le code suivant,si problème tu reviens
si besoin tu changes le nom de la feuille
With Sheets('Feuil3')
L = .Range('A65536').End(xlUp).Row
.Range('C' & L).Value = '01'
.Range('C' & L).NumberFormat = '00'
.Range('B' & L).Value = .Range('G' & L) / .Range('A' & L)
End With
à bientôt
 

Qrieux

XLDnaute Nouveau
Re:probleme d'insertion valeur & formul dans cell

En effet je ne vois pas le rapport entre le code et la question posée.

quelques remarques

offset(0,0) :
indique un decalage de 0 lignes et 0 colonnes !

deux instruction select qui se suivent :
l'ActiveCell suivante se rapporte au dernier select
pour mettre une valeur dans une cellule :
Range('C3').value='01'

mettre une formule dans une cellule puis copier valeur :
faire le calcul en VBA
puis mettre le resultat dans la cellule
exemple
dim resultat as variant
dim lig, col as integer
lig=2
col=1
if cell(lig,col) = '' then
resultat = ''
else
resultat = cell(lig,col).value/cell(lig,col+2).value
end if
cell(lig,col+1).value = resultat

code a adapter avec une boucle (lig= lig+1) pour le repeter sur plusieurs lignes
ajouter aussi un test pour eviter le DIV/O

bon courage
 
F

Fab61

Guest
Re:probleme d'insertion valeur & formul dans cell

Sa commence vraimnet a me prendre la tete :(

La valeur ne se met a '01' dans la colonne C mais en colonne A !!! Par contre la formule marche bien et ensuite elle est bien recopier en tant que valeur.

j'ai pourtant verifier mon code moult fois !!

Range('A65000').End(xlUp).Offset(0, 0).Select
ActiveCell.EntireRow.Offset(0, 0).Range('B1').Select
ActiveCell.FormulaR1C1 = '=IF(ISBLANK(RC[6]),'''',RC[6]&'' / ''&RC[1])'

Range('A65000').End(xlUp).Offset(0, 0).Select
ActiveCell.EntireRow.Offset(0, 0).Range('C1').Select
ActiveCell.FormulaR1C1 = '01'

For Each c In Columns('B').SpecialCells(xlCellTypeFormulas, 23)
c = c.Value
Next c

Range('A65000').End(xlUp).Offset(0, 0).Select
 

pierrejean

XLDnaute Barbatruc
Re:probleme d'insertion valeur & formul dans cell

bonjour fab

j'ais beaucoup hesité a revenir etant donné le bide que je me suis offert sur un post precedent
mais je me lance quand même

vois le fichier joint j'ais analysé le code et traduit en commentaire

je t'ais proposé une modification en test1 qui a l'avantage de fonctionner au point de vue remplacement de la formule

au final il serait infiniment plus simple de nous dire ce que tu souhaites
et par pitié abandonne le offset(0,0) !!!! [file name=fab_20060408143936.zip size=7649]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/fab_20060408143936.zip[/file]
 

Pièces jointes

  • fab_20060408143936.zip
    7.5 KB · Affichages: 15

Robert

XLDnaute Barbatruc
Repose en paix
Re:probleme d'insertion valeur & formul dans cell

Bonjour Fab, Bebere et Qrieux, bonjour le forum,

Explique ce que tu veux faire Fab car ton code est incohérent. Comme te l'ont expliqué Bebere et Qrieux, la moitié des lignes de ton code ne sert à rien :

Range('A65000').End(xlUp).Offset(0, 0).Select
ActiveCell.EntireRow.Offset(0, 0).Range('B1').Select
ActiveCell.FormulaR1C1 = '=IF(ISBLANK(RC[6]),'''',RC[6]&'' / ''&RC[1])'
correspond à :
Range('B1').FormulaR1C1 = '=IF(ISBLANK(RC[6]),'''',RC[6]&'' / ''&RC[1])'

Mais je ne pense pas que ce soit cela que tu veuilles. Peut-être est-ce la première ligne vide de la colonne B ? dans ce cas:
Range('B65536').End(xlUp).Offset(1,0).FormulaR1C1 = '=IF(ISBLANK(RC[6]),'''',RC[6]&'' / ''&RC[1])'


Vérifie moult+1 fois ton code...


Édition :

Bonjour PierreJean on s'est croisés.

Message édité par: Robert, à: 08/04/2006 14:45
 
F

Fab61

Guest
Re:probleme d'insertion valeur & formul dans cell

bonjour,

Merci pour vos réponse deja

Ca ne marche pas totalement en faire pour la formule et la recopie c bon mais le probleme c le placement de la valeur '01' dans la cellule C de ma ligne la valeur se met dans la coolone A ! :(
 

Bebere

XLDnaute Barbatruc
Re:probleme d'insertion valeur & formul dans cell

bonjour à tous
'écrit la formule en colonne b
Range('A65000').End(xlUp).Offset(0, 1).FormulaR1C1 = _
'=IF(ISBLANK(RC[6]),'''',RC[6]/ RC[-1])'
pour ma part oublie formular1c1
pour le reste ?
un petit fihier et ton cas serait déjà résolu
et évite du travail inutle à ceux qui veulent t'aider
à bientôt
 

Bebere

XLDnaute Barbatruc
Re:probleme d'insertion valeur & formul dans cell

bonjour à tous
ne te tracasse pas Pierre Jean je m'en suis offert aussi
mais il faut commencer et surtout continuer
je reprends la ligne de Robert
valeur de h / par valeur de a
Range('B65536').End(xlUp).Offset(1,0).FormulaR1C1 = '=IF(ISBLANK(RC[6]),'''',RC[6]/RC[-1])'
une pièce jointe éviterait du travail inutiles à ceux qui tentent de t'aider,et ton problème déjà résolu
pour le reste ?
à bientôt
 

pierrejean

XLDnaute Barbatruc
Re:probleme d'insertion valeur & formul dans cell

hello Bebere

tu ne peux pas savoir à quel point tu me fait plaisir par tes encouragements !!!

mais va faire un tour ici:

Lien supprimé

tu verras mon bide !!
moi aussi j'ais cru que fab voulait diviser !!!
 

Gorfael

XLDnaute Barbatruc
Salut
Range('A65000').End(xlUp).Select
Sélectionner la première cellule A non vide en partant de la fin

ActiveCell.EntireRow. Range('C1').Select
ActiveCell.FormulaR1C1 = '01'

Mettre '01' dans la cellule C de la ligne de la cellule active

Range('A65000').End(xlUp).Select
ActiveCell.EntireRow.Range('B1').Select

Sélectionner la cellule B de la ligne de la 1re cellule A non-vide en partant du bas

ActiveCell.FormulaR1C1 = '=IF(ISBLANK(RC[6]),'''',RC[6]&'' / ''&RC[1])'
Mettre la formule : =SI(ESTVIDE(H11);'';H11&' / '&C11) dans la sélection

For Each c In Columns('B').SpecialCells(xlCellTypeFormulas)
c = c.Value
Next c

Je suppose que tu as déclaré c comme range
Pour chaque cellule de la colonne B qui contient une formule
Cellule= Valeur de la cellule

J'ai testé, ça marche
A+
 

Discussions similaires

Réponses
4
Affichages
469

Statistiques des forums

Discussions
312 347
Messages
2 087 502
Membres
103 563
dernier inscrit
samyezzehar