Création de colonnes avec formules
Résolu
dan03
Messages postés
35
Statut
Membre
-
yg_be Messages postés 24281 Statut Contributeur -
yg_be Messages postés 24281 Statut Contributeur -
Bonjour,
J'ai écrit le code suivant et j'obtiens une erreur
Dans C1, j'ai une date du format "17/10/2020"
j'ai essayé GAUCHE(C1;5) pour tester, mais en réalité je désire obtenir
une date sous la forme 17-oct, l'année étant dans une autre colonne
Merci de votre aide Cordialement
J'ai écrit le code suivant et j'obtiens une erreur
Dans C1, j'ai une date du format "17/10/2020"
With ActiveWorkbook.sheets("feuille2")
For i = 3 To 5
.Columns(i).Insert ' 1ère colonne (C)
.Columns(i).NumberFormat = "General"
Next
.Range("C1").FormulaLocal = "=macro(B1)"
.Range("C1").AutoFill Destination:=.Range("C1:C" & DerLign), Type:=xlFillDefault
.Range("D1").FormulaLocal = "=CNUM(DROITE(C1;4))" 'date
.Range("D1").AutoFill Destination:=.Range("D1:D" & DerLign), Type:=xlFillDefault
C'est ici que j'obtiens une erreur définie par l'application ou par l'objet
.Range("E1").FormulaLocal = "=GAUCHE(C1,5)"
.Range("E1").AutoFill Destination:=.Range("E1:E" & DerLign), Type:=xlFillDefault
End With
j'ai essayé GAUCHE(C1;5) pour tester, mais en réalité je désire obtenir
une date sous la forme 17-oct, l'année étant dans une autre colonne
Merci de votre aide Cordialement
Configuration: Windows / Edge 86.0.622.38
A voir également:
- Création de colonnes avec formules
- Formule moyenne excel plusieurs colonnes - Guide
- Comment faire des colonnes sur word - Guide
- Creation de site web - Guide
- Creation de compte google - Guide
- Creation compte gmail - Guide
5 réponses
Bonjour,
Tu dis
Ce qui semble être la bonne syntaxe... et donc.. ça donne quoi .. toujours l'erreur ??
Ca serait donc plus cette méthode que tu devrais utiliser je pense
Tu dis
j'ai essayé GAUCHE(C1;5) pour tester
Ce qui semble être la bonne syntaxe... et donc.. ça donne quoi .. toujours l'erreur ??
en réalité je désire obtenir
une date sous la forme 17-oct,
Ca serait donc plus cette méthode que tu devrais utiliser je pense
= TEXT (C1 ; "dd-mmm")
yg_be
Messages postés
24281
Statut
Contributeur
1 584
cela fonctionne mieux sans espace entre T et (:
bonjour,
que veux-tu obtenir?
un code qui ne fonctionne pas ne peut surement pas remplacer une description de l'objectif.
pourquoi utiises-tu un code, au lieu d'enregistrer une formule?
que veux-tu obtenir?
un code qui ne fonctionne pas ne peut surement pas remplacer une description de l'objectif.
pourquoi utiises-tu un code, au lieu d'enregistrer une formule?
Bonjour,
Toujours le même problème
Je vous joint un fichier d'exemple
https://www.cjoint.com/c/JJsiyjk4UMh
Merci de votre aide
Toujours le même problème
Je vous joint un fichier d'exemple
https://www.cjoint.com/c/JJsiyjk4UMh
Merci de votre aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
comme ceci:
Voilà
comme ceci:
Option Explicit
Global Debut As Integer
Sub Calcul()
Dim DerLigne
With ActiveWorkbook.sheets("Feuil2")
'Création des feuilles
Dim i As Integer
For i = 4 To 5
.Columns(i).Insert
.Columns(i).NumberFormat = "General"
.Columns(i).HorizontalAlignment = xlCenter
Next
'Calcul nombre de lignes
DerLigne = sheets("Feuil2").Cells.Find("*", , , , xlByRows, xlPrevious).Row
.Range("D1").FormulaLocal = "=CNUM(DROITE(C1;4))" 'date
.Range("D1").AutoFill Destination:=.Range("D1:D" & DerLigne), Type:=xlFillDefault
'C'est là ou ça coince
'Je voudrais obtenir un résulatat comme 21-déc
'j'ai essayé avec = GAUCHE, pour tester mais erreur
.Range("E1").FormulaLocal = "=GAUCHE(C1;5)"
.Range("E1").AutoFill Destination:=.Range("E1:E" & DerLigne), Type:=xlFillDefault
End With
For i = 1 To DerLigne
Range("E" & i).Value = Format(Range("E" & i), "dd-mmmm")
Next
End Sub
Voilà