Bonjour, je suis étudiant en alternance en mécanique et j'ia quelques notions en VBA mais je sèche sur certains points. Je dois automatiser une mise a jour de base de données d'un retour d'experience, j'aurais besoin de votre aide sur 2 points:
En gros j'ai une liste de dossiers datés et je dois piocher dedans pour rassembler les infos (par année, ou autre)
* Je souhaiterais vérifier le contenu d'une Textbox qui doit comporter une date soit "**/**/***" soit "all" (pour considérer l'ensemble des dossiers de la liste mais je ne trouve pas le code a insérer pour vérifier ce champ et afficher un message d'erreur si celui ci est mal rempli.
* Je souhaite mettre en oeuvre un formulaire qui se lancerait au début de la macro. On rentrerait la date de début de la recherche, et la date de fin sous cette forme: jj-mm-aaaa. La macro ferait alors un tri parmi la liste pour ne copier que les cellules qui sont dans cet intervalle dans un tableau. Seulement je n'arrive pas à faire une boucle avec des dates. J'ai fais ceci:
Bien sur ca ne marche pas. Comment incrémenter cette boucle qui concerne des dates ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 Private Sub CommandButton1_Click() Dim j As Double Dim ata, zone, feuille_data, feuille_donnees, feuille_transfert As String Dim datedebut, datefin As Date feuille_data = "Données" feuille_siebel = "ExportationDonnees" feuille_transfert = "Feuilletransfert" Sheets(feuille_data).Select j = 1 Do While Sheets(feuille_transfert).Range("I2").Offset(j, 0) <= datefin If Sheets(feuille_transfert).Range("I2").Offset(j, 0) >= datedebut Then Range("A1:I2").Offset(j, 0).Select Selection.Copy Sheets(feuille_data).Select Range("A3").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False j = j + 1 Else j = j + 1 End If Loop
Merci beaucoup pour votre aide pour mon travail. Si je pouvais avoir des premiers élements de réponse ce soir pour avancer demain ca serait top...
Bonne soirée,
Camille
Partager