OVH Cloud OVH Cloud

Code feuille + complémentaire

7 réponses
Avatar
DC
Bonjour à tous.........( petite modifiction de langage )
>
> Jai un Code Feuille qui en modifiant une valeur dans une colonne, me donne
> en même temps, la date du jour, 3 colonnes plus loin.
>
> J'ai une Macro, qui modifie avec un pourcentage les dites valeurs, mais
> pas les dates.
>
> Aussi j'aimerais pouvoir modifier cette colonne de dates avec un genre (
> Copier / Coller ) mais en sauvegardant les blancs ( cellules vides ).
> Ou mieux, voir un Code Feuille plus élaboré des modifications de valeurs
> avec pourcentage, qui en même temps modifirait les dates en préservant les
> blancs ( cellules vides).

Voici le code feuille actuelle :
>
> For i = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
> If Range("B" & i).Value = "" Then
> Else
> Range("B" & i).Value = Range("B" & i).Value * 1.02
> End If
> Next i
>
> Salutations........Merci d'avance.........DC
>

7 réponses

Avatar
michdenis
Bonjour DC,

En supposant que tu ne veuilles modifier que les cellules qui ont un contenu numérique (pas de formules dans tes cellules), voici un
exemple :

Adapte le nom de la feuille et de la plage de cellules au besoin
'---------------------------
Sub Incrémenter()

Dim Rg As Range
On Error Resume Next
With Worksheets("Feuil1")
Set Rg = .Range("B1:B" & .Range("B65536").End(xlUp).Row) _
.SpecialCells(xlCellTypeConstants, xlNumbers)
With Rg
Rg.Value = Rg.Value * 0.02
End With
End With
Set Rg = Nothing

End Sub
'---------------------------


Salutations!



"DC" a écrit dans le message de news: 4307794f$0$3149$
Bonjour à tous.........( petite modifiction de langage )

Jai un Code Feuille qui en modifiant une valeur dans une colonne, me donne
en même temps, la date du jour, 3 colonnes plus loin.

J'ai une Macro, qui modifie avec un pourcentage les dites valeurs, mais
pas les dates.

Aussi j'aimerais pouvoir modifier cette colonne de dates avec un genre (
Copier / Coller ) mais en sauvegardant les blancs ( cellules vides ).
Ou mieux, voir un Code Feuille plus élaboré des modifications de valeurs
avec pourcentage, qui en même temps modifirait les dates en préservant les
blancs ( cellules vides).


Voici le code feuille actuelle :

For i = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
If Range("B" & i).Value = "" Then
Else
Range("B" & i).Value = Range("B" & i).Value * 1.02
End If
Next i

Salutations........Merci d'avance.........DC



Avatar
michdenis
Juste une petite précision, si tu veux voir le résultat dans les cellules, tu devras modifier le format des cellules pour pouvoir
afficher les heures/minutes/secondes

Au calendrier 1900 Voir outils / option / onglet calcul

(sans tenir compte de l'erreur classique attachée à ce calendrier)
Ainsi Le 28 août 2005 = 38592

Après avoir fait la multiplication par 1.02 = 39363,84

Au format date suivant de la cellule : jj-mm-aa hh:mm:ss
Le résultat : 08-10-2007 20:09:36
soit une majoration de 20 hres 09 minutes 36 secondes.


Salutations!


"michdenis" a écrit dans le message de news:
Bonjour DC,

En supposant que tu ne veuilles modifier que les cellules qui ont un contenu numérique (pas de formules dans tes cellules), voici un
exemple :

Adapte le nom de la feuille et de la plage de cellules au besoin
'---------------------------
Sub Incrémenter()

Dim Rg As Range
On Error Resume Next
With Worksheets("Feuil1")
Set Rg = .Range("B1:B" & .Range("B65536").End(xlUp).Row) _
.SpecialCells(xlCellTypeConstants, xlNumbers)
With Rg
Rg.Value = Rg.Value * 0.02
End With
End With
Set Rg = Nothing

End Sub
'---------------------------


Salutations!



"DC" a écrit dans le message de news: 4307794f$0$3149$
Bonjour à tous.........( petite modifiction de langage )

Jai un Code Feuille qui en modifiant une valeur dans une colonne, me donne
en même temps, la date du jour, 3 colonnes plus loin.

J'ai une Macro, qui modifie avec un pourcentage les dites valeurs, mais
pas les dates.

Aussi j'aimerais pouvoir modifier cette colonne de dates avec un genre (
Copier / Coller ) mais en sauvegardant les blancs ( cellules vides ).
Ou mieux, voir un Code Feuille plus élaboré des modifications de valeurs
avec pourcentage, qui en même temps modifirait les dates en préservant les
blancs ( cellules vides).


Voici le code feuille actuelle :

For i = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
If Range("B" & i).Value = "" Then
Else
Range("B" & i).Value = Range("B" & i).Value * 1.02
End If
Next i

Salutations........Merci d'avance.........DC



Avatar
DC
Bonjour à Tous...........Bonjour michdenis,

on repart à zéro, car j' ai tout mélangé.

Dans une colonne, j'ai des dates différentes puisqu'elles sont tributaires
individuellement par le code feuille de la remise a niveau des prix
pratiqués et éxécutés manuellement.

Ces dates dans les cellules correspondantes sont sous forme de formules ex :
( = NOMPROPRE("20 Aout 2005")

Donc j'aimerais disposer d'une Macro qui pourrait prendre une date en texte
( écrite manuellement) et la recopier dans la colonne en tenant compte des
blancs ( cellules vides )

Salutations.......Merci d'avance........DC

PS

Peut-on transformer une formule en texte avec excel.
"michdenis" a écrit dans le message de news:


Juste une petite précision, si tu veux voir le résultat dans les cellules,
tu devras modifier le format des cellules pour pouvoir
afficher les heures/minutes/secondes

Au calendrier 1900 Voir outils / option / onglet calcul

(sans tenir compte de l'erreur classique attachée à ce calendrier)
Ainsi Le 28 août 2005 = 38592

Après avoir fait la multiplication par 1.02 = 39363,84

Au format date suivant de la cellule : jj-mm-aa hh:mm:ss
Le résultat : 08-10-2007 20:09:36
soit une majoration de 20 hres 09 minutes 36 secondes.


Salutations!


"michdenis" a écrit dans le message de news:

Bonjour DC,

En supposant que tu ne veuilles modifier que les cellules qui ont un
contenu numérique (pas de formules dans tes cellules), voici un
exemple :

Adapte le nom de la feuille et de la plage de cellules au besoin
'---------------------------
Sub Incrémenter()

Dim Rg As Range
On Error Resume Next
With Worksheets("Feuil1")
Set Rg = .Range("B1:B" & .Range("B65536").End(xlUp).Row) _
.SpecialCells(xlCellTypeConstants, xlNumbers)
With Rg
Rg.Value = Rg.Value * 0.02
End With
End With
Set Rg = Nothing

End Sub
'---------------------------


Salutations!



"DC" a écrit dans le message de news:
4307794f$0$3149$
Bonjour à tous.........( petite modifiction de langage )

Jai un Code Feuille qui en modifiant une valeur dans une colonne, me
donne
en même temps, la date du jour, 3 colonnes plus loin.

J'ai une Macro, qui modifie avec un pourcentage les dites valeurs, mais
pas les dates.

Aussi j'aimerais pouvoir modifier cette colonne de dates avec un genre (
Copier / Coller ) mais en sauvegardant les blancs ( cellules vides ).
Ou mieux, voir un Code Feuille plus élaboré des modifications de valeurs
avec pourcentage, qui en même temps modifirait les dates en préservant
les
blancs ( cellules vides).


Voici le code feuille actuelle :

For i = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
If Range("B" & i).Value = "" Then
Else
Range("B" & i).Value = Range("B" & i).Value * 1.02
End If
Next i

Salutations........Merci d'avance.........DC









Avatar
michdenis
Bonjour DC,

Qu'est-ce qu'il y a dans tes cellules au départ :

= NOMPROPRE("20 Août 2005") ou une date en texte écrite manuellement ? Est-ce la même chose ?

Qu'est-ce qu'il doit y avoir dans l'autre colonne recopié ? Seulement les dates ? La formule qui contient les dates ? Quel format de
date doit avoir cette colonne ?

Donne nous un petit exemple, ce que tu as dans la cellule et ce que tu veux obtenir !


Salutations!



"DC" a écrit dans le message de news: 43085130$0$1252$
Bonjour à Tous...........Bonjour michdenis,

on repart à zéro, car j' ai tout mélangé.

Dans une colonne, j'ai des dates différentes puisqu'elles sont tributaires
individuellement par le code feuille de la remise a niveau des prix
pratiqués et éxécutés manuellement.

Ces dates dans les cellules correspondantes sont sous forme de formules ex :
( = NOMPROPRE("20 Aout 2005")

Donc j'aimerais disposer d'une Macro qui pourrait prendre une date en texte
( écrite manuellement) et la recopier dans la colonne en tenant compte des
blancs ( cellules vides )

Salutations.......Merci d'avance........DC

PS

Peut-on transformer une formule en texte avec excel.
"michdenis" a écrit dans le message de news:


Juste une petite précision, si tu veux voir le résultat dans les cellules,
tu devras modifier le format des cellules pour pouvoir
afficher les heures/minutes/secondes

Au calendrier 1900 Voir outils / option / onglet calcul

(sans tenir compte de l'erreur classique attachée à ce calendrier)
Ainsi Le 28 août 2005 = 38592

Après avoir fait la multiplication par 1.02 = 39363,84

Au format date suivant de la cellule : jj-mm-aa hh:mm:ss
Le résultat : 08-10-2007 20:09:36
soit une majoration de 20 hres 09 minutes 36 secondes.


Salutations!


"michdenis" a écrit dans le message de news:

Bonjour DC,

En supposant que tu ne veuilles modifier que les cellules qui ont un
contenu numérique (pas de formules dans tes cellules), voici un
exemple :

Adapte le nom de la feuille et de la plage de cellules au besoin
'---------------------------
Sub Incrémenter()

Dim Rg As Range
On Error Resume Next
With Worksheets("Feuil1")
Set Rg = .Range("B1:B" & .Range("B65536").End(xlUp).Row) _
.SpecialCells(xlCellTypeConstants, xlNumbers)
With Rg
Rg.Value = Rg.Value * 0.02
End With
End With
Set Rg = Nothing

End Sub
'---------------------------


Salutations!



"DC" a écrit dans le message de news:
4307794f$0$3149$
Bonjour à tous.........( petite modifiction de langage )

Jai un Code Feuille qui en modifiant une valeur dans une colonne, me
donne
en même temps, la date du jour, 3 colonnes plus loin.

J'ai une Macro, qui modifie avec un pourcentage les dites valeurs, mais
pas les dates.

Aussi j'aimerais pouvoir modifier cette colonne de dates avec un genre (
Copier / Coller ) mais en sauvegardant les blancs ( cellules vides ).
Ou mieux, voir un Code Feuille plus élaboré des modifications de valeurs
avec pourcentage, qui en même temps modifirait les dates en préservant
les
blancs ( cellules vides).


Voici le code feuille actuelle :

For i = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
If Range("B" & i).Value = "" Then
Else
Range("B" & i).Value = Range("B" & i).Value * 1.02
End If
Next i

Salutations........Merci d'avance.........DC









Avatar
DC
Bonjour à Tous.........Bonjour michdenis,

Dans les cellules de la colonne au départ, il y à cette formule :
=NOMPROPRE("20 Août 2005") et qui affiche 20 Août 2005....ou bien entendu
une autre date.

Aussi lorsque j'interviens par une macro, pour mettre un pourcentage
collectif de majoration aux valeurs, les dates ne se modifies pas
automatiquement, comme elles le font quand j'interviens manuellement sur
chaque valeur et ceci grace au code feuille.

Donc je voudrais pouvoir intervenir sur la colonne des dates, par une macro
qui afficherait collectivement, la date du jour, mais en tenant compte des
blancs ( cellules vides ) existants dans la stucture.

Dates sous Dates modifiées
formule du collectivement
code feuille par la macro

2 Août 2005 2 Janvier 2006
10 Août 2005 2 Janvier 2006

15 Août 2005 2 Janvier 2006

20 Août 2005 2 Janvier 2006

Surtout tenir compte des cellules vides.

En plus, une question, peut-on sous excel 2000 et d'une façon simple
transformer le résultat d'une valeur dans une cellule, en texte.?

J'espère ètre claire, mais bon, ça reste à prouver!

Salutations.........Merci d'avance..........DC

"DC" a écrit dans le message de news:
4307794f$0$3149$
Bonjour à tous.........( petite modifiction de langage )

Jai un Code Feuille qui en modifiant une valeur dans une colonne, me
donne
en même temps, la date du jour, 3 colonnes plus loin.

J'ai une Macro, qui modifie avec un pourcentage les dites valeurs, mais
pas les dates.

Aussi j'aimerais pouvoir modifier cette colonne de dates avec un genre (
Copier / Coller ) mais en sauvegardant les blancs ( cellules vides ).
Ou mieux, voir un Code Feuille plus élaboré des modifications de valeurs
avec pourcentage, qui en même temps modifirait les dates en préservant
les
blancs ( cellules vides).


Voici le code feuille actuelle :

For i = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
If Range("B" & i).Value = "" Then
Else
Range("B" & i).Value = Range("B" & i).Value * 1.02
End If
Next i

Salutations........Merci d'avance.........DC







Avatar
michdenis
Bonjour DC,

Essaie ceci :

'--------------------------------------
Sub Incrémenter()

Dim MaDate As String
MaDate = Format(Date, "dd mmmm yy")
Dim Rg As Range
On Error Resume Next
With Worksheets("Feuil1")
Set Rg = .Range("B1:B" & .Range("B65536").End(xlUp).Row) _
.SpecialCells(xlCellTypeFormulas)
For Each c In Rg
If UCase(Left(c.localformula, 10)) = "=NOMPROPRE" Then
c.NumberFormat = "dd mmmm yy"
c.FormulaLocal = "=NomPropre(""" & MaDate & """)"
End If
Next
End With
Set Rg = Nothing

End Sub
'--------------------------------------


Salutations!




"DC" a écrit dans le message de news: 4308a5b9$0$17467$
Bonjour à Tous.........Bonjour michdenis,

Dans les cellules de la colonne au départ, il y à cette formule :
=NOMPROPRE("20 Août 2005") et qui affiche 20 Août 2005....ou bien entendu
une autre date.

Aussi lorsque j'interviens par une macro, pour mettre un pourcentage
collectif de majoration aux valeurs, les dates ne se modifies pas
automatiquement, comme elles le font quand j'interviens manuellement sur
chaque valeur et ceci grace au code feuille.

Donc je voudrais pouvoir intervenir sur la colonne des dates, par une macro
qui afficherait collectivement, la date du jour, mais en tenant compte des
blancs ( cellules vides ) existants dans la stucture.

Dates sous Dates modifiées
formule du collectivement
code feuille par la macro

2 Août 2005 2 Janvier 2006
10 Août 2005 2 Janvier 2006

15 Août 2005 2 Janvier 2006

20 Août 2005 2 Janvier 2006

Surtout tenir compte des cellules vides.

En plus, une question, peut-on sous excel 2000 et d'une façon simple
transformer le résultat d'une valeur dans une cellule, en texte.?

J'espère ètre claire, mais bon, ça reste à prouver!

Salutations.........Merci d'avance..........DC

"DC" a écrit dans le message de news:
4307794f$0$3149$
Bonjour à tous.........( petite modifiction de langage )

Jai un Code Feuille qui en modifiant une valeur dans une colonne, me
donne
en même temps, la date du jour, 3 colonnes plus loin.

J'ai une Macro, qui modifie avec un pourcentage les dites valeurs, mais
pas les dates.

Aussi j'aimerais pouvoir modifier cette colonne de dates avec un genre (
Copier / Coller ) mais en sauvegardant les blancs ( cellules vides ).
Ou mieux, voir un Code Feuille plus élaboré des modifications de valeurs
avec pourcentage, qui en même temps modifirait les dates en préservant
les
blancs ( cellules vides).


Voici le code feuille actuelle :

For i = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
If Range("B" & i).Value = "" Then
Else
Range("B" & i).Value = Range("B" & i).Value * 1.02
End If
Next i

Salutations........Merci d'avance.........DC







Avatar
DC
Bonjour à Tous..........Bonjour michdenis,

J'ai donc essayé ta dernière Macro, mais il ne se passe strictement rien,
aussi j'ai persisté, pensant à une erreur de manipulation de ma part, et
comme je fait du copier-coller, ça rejette l'erreur d'écriture,
donc.........?

c'est pourquoi je m'en remet de nouveau à toi, car je suis perdu.!

Salutations...........Merci d'avance............DC


"michdenis" a écrit dans le message de news:
uXwo$
Bonjour DC,

Essaie ceci :

'--------------------------------------
Sub Incrémenter()

Dim MaDate As String
MaDate = Format(Date, "dd mmmm yy")
Dim Rg As Range
On Error Resume Next
With Worksheets("Feuil1")
Set Rg = .Range("B1:B" & .Range("B65536").End(xlUp).Row) _
.SpecialCells(xlCellTypeFormulas)
For Each c In Rg
If UCase(Left(c.localformula, 10)) = "=NOMPROPRE" Then
c.NumberFormat = "dd mmmm yy"
c.FormulaLocal = "=NomPropre(""" & MaDate & """)"
End If
Next
End With
Set Rg = Nothing

End Sub
'--------------------------------------


Salutations!




"DC" a écrit dans le message de news:
4308a5b9$0$17467$
Bonjour à Tous.........Bonjour michdenis,

Dans les cellules de la colonne au départ, il y à cette formule :
=NOMPROPRE("20 Août 2005") et qui affiche 20 Août 2005....ou bien entendu
une autre date.

Aussi lorsque j'interviens par une macro, pour mettre un pourcentage
collectif de majoration aux valeurs, les dates ne se modifies pas
automatiquement, comme elles le font quand j'interviens manuellement sur
chaque valeur et ceci grace au code feuille.

Donc je voudrais pouvoir intervenir sur la colonne des dates, par une
macro
qui afficherait collectivement, la date du jour, mais en tenant compte des
blancs ( cellules vides ) existants dans la stucture.

Dates sous Dates modifiées
formule du collectivement
code feuille par la macro

2 Août 2005 2 Janvier 2006
10 Août 2005 2 Janvier 2006

15 Août 2005 2 Janvier 2006

20 Août 2005 2 Janvier 2006

Surtout tenir compte des cellules vides.

En plus, une question, peut-on sous excel 2000 et d'une façon simple
transformer le résultat d'une valeur dans une cellule, en texte.?

J'espère ètre claire, mais bon, ça reste à prouver!

Salutations.........Merci d'avance..........DC

"DC" a écrit dans le message de news:
4307794f$0$3149$
Bonjour à tous.........( petite modifiction de langage )

Jai un Code Feuille qui en modifiant une valeur dans une colonne, me
donne
en même temps, la date du jour, 3 colonnes plus loin.

J'ai une Macro, qui modifie avec un pourcentage les dites valeurs, mais
pas les dates.

Aussi j'aimerais pouvoir modifier cette colonne de dates avec un genre (
Copier / Coller ) mais en sauvegardant les blancs ( cellules vides ).
Ou mieux, voir un Code Feuille plus élaboré des modifications de valeurs
avec pourcentage, qui en même temps modifirait les dates en préservant
les
blancs ( cellules vides).


Voici le code feuille actuelle :

For i = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
If Range("B" & i).Value = "" Then
Else
Range("B" & i).Value = Range("B" & i).Value * 1.02
End If
Next i

Salutations........Merci d'avance.........DC