Affectation d'une formule à une celllule si la cellule voisine à une certaine valeur

pduval34

XLDnaute Nouveau
Question simple de débutant :

Je souhaite que pour chaque cellule de la colonne B qui a la valeur "XXX" alors la cellule voisine sur la colonne C prenne comme valeur la valeur numérique de la cellule sur la colonne A.

Merci pour votre aide.
 

pduval34

XLDnaute Nouveau
Re : Affectation d'une formule à une celllule si la cellule voisine à une certaine va

Message envoyé trop vite : la colonne A est une date :

15/01/2012 XXX valeur numérique de A1
15/01/2012 ZZZ valeur de la colonne D
12/01/2012 XXX valeur numérique de A3
 

pduval34

XLDnaute Nouveau
Re : Affectation d'une formule à une celllule si la cellule voisine à une certaine va

Merci pour la solution, mais comment faut-il écrire =SI($B2="XXX";$A2;$D2) lorsque l'on veut que $A2 soit une formule qui correspond à la valeur numérique de la cellule A2 qui est une date ?
Encore merci d'accepter cette question de débutant !
 

JNP

XLDnaute Barbatruc
Re : Affectation d'une formule à une celllule si la cellule voisine à une certaine va

Bonjour le fil :),
C'est plus une question de format de cellule que de formule, si tu appliques un format standard, ou nombre sans décimales, tu obtiendras ce que tu souhaites :p...
Bonne suite :cool:
 

pduval34

XLDnaute Nouveau
Re : Affectation d'une formule à une celllule si la cellule voisine à une certaine va

Je reviens vers vous car votre formule ne résoud pas mon problème.
Le fichier joint expose le problème :

J'importe des dates (colonnes A).

Ces dates se présentent à la réception, malheureusement dans 2 formats différents :
Avant le 13 du mois en format américain : mm/jj/aa
A partir du 13 en format texte sous une présentation européenne.
Je converti donc dans un premier temps tout au format européen : colonne B
Puis je transforme tout en valeur numérique :
- Colonne C pour la date en format "Date"
- Colonne D pour la date en format "Texte"

Mon objectif :] obtenir en colonne E toutes les dates en valeur numériques.
Cela grâce à une macro.
Merci pour votre aide, très appréciable.
 

Pièces jointes

  • Formatage_Date.xls
    18.5 KB · Affichages: 44
  • Formatage_Date.xls
    18.5 KB · Affichages: 43
  • Formatage_Date.xls
    18.5 KB · Affichages: 48

JHA

XLDnaute Barbatruc
Re : Affectation d'une formule à une celllule si la cellule voisine à une certaine va

Bonjour à tous,

Avec une formule
=SIERREUR(TEXTE(A2;"mm/jj/aaaa")*1;TEXTE(A2;"jj/mm/aaaa")*1)

JHA
 

Pièces jointes

  • Formatage_Date.xls
    17 KB · Affichages: 46
  • Formatage_Date.xls
    17 KB · Affichages: 46
  • Formatage_Date.xls
    17 KB · Affichages: 47

JNP

XLDnaute Barbatruc
Re : Affectation d'une formule à une celllule si la cellule voisine à une certaine va

Re :),
Je vais tester celle de JHA, sinon
Code:
=SI(ESTTEXTE(A2);DATEVAL(A2);DATEVAL(TEXTE(A2;"mm/jj/aaaa")))
Bonne suite :cool:
Ajout : Même résultat, celle de JHA étant un poil plus courte (59 pour 60 caractères pour la mienne) :rolleyes:...
 
Dernière édition:

pduval34

XLDnaute Nouveau
Re : Affectation d'une formule à une celllule si la cellule voisine à une certaine va

Merci mille fois, vos formules sont à l'image de votre rapidité de réponse : exceptionnelles !!!

Cela fonctionne même sur ma version d'Excel (XP97) :
Malheureusement pas ma macro !!! :

Sub TEST()
'

Dim der As Integer

der = Range("A65536").End(xlUp).Row
Range("B1").Select

ActiveCell.FormulaR1C1 = "=SI(ESTTEXTE(RC[1],-1);DATEVAL(RC[1],-1);DATEVAL(TEXTE(RC[1],-1);"mm/jj/aaaa")))"


der = Range("A65536").End(xlUp).Row

' Recopiage des autres cellules
Range("B1").Select
Selection.Copy
Range("B2:B" & der).Select
ActiveSheet.Paste


End Sub

Où est l'erreur ?
Merci encore une fois.
 

JNP

XLDnaute Barbatruc
Re : Affectation d'une formule à une celllule si la cellule voisine à une certaine va

Re :),
Que ta macro doit utiliser l'anglais
Code:
"=IF(ISTEXT(R[-13]C[-1]),DATEVALUE(R[-13]C[-1]),DATEVALUE(TEXT(R[-13]C[-1],""mm/jj/aaaa"")))"
à adapter... :rolleyes:
Bonne soirée :cool:
 

pduval34

XLDnaute Nouveau
Re : Affectation d'une formule à une celllule si la cellule voisine à une certaine va

Super : formule en anglais pour le VBA, texte en français sur la feuille Excel (mm/jj/aaaa) et non mm/dd/yyyy) !
C'est parfait ! : vous avez toute ma gratitude.
Cela faisait des jours que je séchais sur ce problème !!!!!!
 

Discussions similaires

Statistiques des forums

Discussions
312 331
Messages
2 087 360
Membres
103 529
dernier inscrit
moket07