Bonjour,
Je me suis mis au vba depuis à peu prés 3 semaines et j'ai des probleme sur la programmation d'une macro qui devient vraiment trop balaize pour moi.
Je vais essayé d'etre le plus clair possible dans l'explication de ma difficulté.
J'ai deux structures de tableaux identiques sur deux feuilles differentes.
La premiere colonne de ces tableaux sont les dates d'entrée d'un enregistrement.
Je voudrais à partir du tableau qui contient toutes les dates afficher dans le second tableaux uniquement les enregistrement du lendemain (date+1 en vba).
Voici le code que j'ai fait pour le moment ms qui ne marche pas ...
mon probleme se situe au niveau de la copie (je met en rouge la ou VBA m'hurle dessus).
Il me reste ensuite je pense a parcourir le deuxieme tableau pour supprimer les vieux enregistrements de façon a avoir toujours que les enregistrements date +1.
Arf encore une chose à laquelle je n'ai pas pensé. ça enregistre les lignes meme si elles y sont deja ça fait des doublons...
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 Dim i As Integer, derli As Integer, dercol As Integer, jour As String jour = Date + 1 ActiveWorkbook.Worksheets("global").Select derli = Columns(1).Find("*", , , , , xlPrevious).Row dercol = Rows(1).Find("*", , , , , xlPrevious).Column For i = derli To 3 Step -1 If Cells(i, 1).Value = jour Then Range(Cells(i, 1), Cells(i, dercol)).Copy ThisWorkbook.Sheets("concur jour").Cells(Range("A65536").End(xlUp).Row + 1, 1) ' ici ça copie à la meme ligne que le tableau d'origien et pas a la premiere ligne vide du nouveau tableau End If Next Sheets("Saisie").Select
je trouve toujours un truc qui bloque en plus.... :s
Partager