Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Créer une boucle sur un code VBA deja existant...

faker

XLDnaute Nouveau
Bonjour a tous,

Je viens de trouver un code VBA sur internet qui pourrait repondre a mes besoins mais je dois l'adapter.

Je cherche a créer une boucle sur un code dedié a ne traiter qu'une seule ligne.

J'ai modifié le code source pour que les resultats soient restranscrits en ligne

Creer une boucle depasse largement mes competences.

Pouvez vous m'aider la dessus :


Comment faire :

Sub WriteDates()
'Updateby20150305
Dim rng As Range
Dim StartRng As Range
Dim EndRng As Range
Dim OutRng As Range
Dim StartValue As Variant
Dim EndValue As Variant
xTitleId = "KutoolsforExcel"
Set StartRng = Application.Selection
Set StartRng = Application.InputBox("Start Range (single cell):", xTitleId, StartRng.Address, Type:=8)
Set EndRng = Application.InputBox("End Range (single cell):", xTitleId, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set OutRng = OutRng.Range("A1")
StartValue = StartRng.Range("A1").Value
EndValue = EndRng.Range("A1").Value
If EndValue - StartValue <= 0 Then
Exit Sub
End If
ColIndex = 0
For i = StartValue To EndValue
OutRng.Offset(0, ColIndex) = i
ColIndex = ColIndex + 1
Next
End Sub


Merci pour votre aide !

Source : https://www.extendoffice.com/documents/excel/2659-excel-list-all-dates-between-two-dates.html
 

ChTi160

XLDnaute Barbatruc
Bonjour faker
Bonjour le Fil ,le Forum
voilà ce que j'ai modifié et qui semble répondre à ta demande !
VB:
ColIndex = 0
        For i = StartValue To EndValue
                    OutRng.Offset(, ColIndex) = i
            ColIndex = ColIndex + 1       
        Next
merci pour le fichier joint lol
Bonne fin de journée
Amicalement
jean marie
 

faker

XLDnaute Nouveau
Mea Culpa, je ne viens pas souvent mais je sais que le fichier joint est nécessaire !

Désolé pour l'oubli

Voici la pièce jointe

Merci pour votre aide !
 

Pièces jointes

  • TEST MACRO.xlsm
    14.3 KB · Affichages: 24

faker

XLDnaute Nouveau
Je vous explicite mon besoin.

en colonne F & G le début et la fin du période

13/11/2017 au 20/11/2017

en executant la macro, je specifie la cellule F9, puis la cellule G9 et enfin la cellule I9 pour exporter les résultats

De I9 a P9, je me retrouve avec l'ensemble des dates de la période 13/11 puis 14/11 ... jusqu'au 20/11

J'ai trouvé cette macro qui ne marche que ligne par ligne
je voulais l'adapter a mon besoin a savoir exécuter ce code sur chaque ligne

Est ce que vous connaissez le moyen de creer une boucle a partir de ces criteres ?
ou est ce que vous connaissez un code vba alternatif donnant le meme resultat ?

Merci
 

Pièces jointes

  • TEST MACRO V1.xlsm
    17.4 KB · Affichages: 22

Discussions similaires

Réponses
21
Affichages
320
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…