• Initiateur de la discussion Initiateur de la discussion jeanphi
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

jeanphi

XLDnaute Occasionnel
Bonjour

Je souhaite faire la macro suivante:
Si dans la colonne S il n'y a pas de date et que la date de la colonne C est égale à la date système - 10 jours, je souhaite que la valeur de la colonne B se copie dans une feuille temporaire (qui se crée qu'au lancement de la macro)
J'ai essayé avec le code ci dessous mais cà fonctionne pas 🙁



Sub CdePasFaite()
Dim cell As Range

For Each cell In Sheets("FEB").Range("S7:E" & Sheets("FEB").Range("S65536").End(xlUp).Row)
If cell.Value = "" And cell.Offset(0, -15).Value = (Date - 10) Then
cell.Offset(0, -16).Copy Sheets("Temp").Range("A" & Sheets("Temp").Range("A65536").End(xlUp).Row + 1)
End If
Next


Quelqu'un peut t'il m'aider SVP?
Merci
Bonne journée à tous
End Sub
 
Re : Copy Sheet

Bonjour,
Code:
Sub CdePasFaite()
Dim cell As Range

For Each cell In Sheets("FEB").Range("S7:S" & Sheets("FEB").Range("C65536").End(xlUp).Row)
If cell.Value = "" And cell.Offset(0, -16).Value = (Date - 10) Then
cell.Offset(0, -16).Copy Destination:=Sheets("Temp").Range("A" & Sheets("Temp").Range("A65536").End(xlUp).Row + 1)
End If
Next
End Sub
Cordialement
 
Re : Copy Sheet

bonjour et merci pour ton aide


mais ca plante toujours!
a ce niveau

cell.Offset(0, -16).Copy Destination:=Sheets("Temp").Range("A" & Sheets("Temp").Range("A65536").End(xlUp).Row + 1)

je pense que c'est le -16 (colonne B) qui est pas bon???
 
Re : Copy Sheet

bonjour 😉


non ca y est j'ai réussi à la faire fonctionner (pb d'adressage au niveau de l'offset)
par contre j'aurais aimé que la feuille se crée au lancement de la macro et non pas qu'elle existe préalablement
aurais tu une idée?
par ailleurs sais tu comment spécifier en VB "compris entre"? (je veux que la date soit comprise entre 10 et 20 jours par rapport à la date du jour)
merci pour ton aide et bonne soirée à toi!! 🙂
 
Re : Copy Sheet

Bonjour JeanPhi, Spitnolan🙂

essaye peut être comme ceci pour tester une date comprise entre 10 et 20 jours par rapport à la date du jour :

Code:
If ActiveCell.Value >= Date + 10 And ActiveCell.Value <= Date + 20 Then

bonne fin d'après midi
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
15
Affichages
784
Retour