VBA - Coller dans la ligne vierge

VBA - Coller dans la ligne vierge - VB/VBA/VBS - Programmation

Marsh Posté le 27-05-2006 à 20:10:40    

Bonjour à tous
 
Voilà mon problème.
 
Mon service (enfin, où je suis en stage...) recevra tous les mois un fichier excel transmis par les RH.
 
En simplifié :
 
Centre courrier / Nom / Prenom / Motif absence
(filtre automatique présent)
 
Je veux dans un autre onglet récupérer que les motifs CA / jours CFA / Repos compensateur
 
J'ai réalisé en VB une macro permettant de parcourir le filtre auto, récupérer les donnés.. (boucle)
Le hic c qu'il ne faut pas que je donne une plage de destination fixe, étant donné que le nb ligne est variable.
 
Comment faire pour récupérer les infos pour les CA, dire qu'il faut aller à la ligne suivante vierge pour coller les infos des jours CFA ?
 
Merci de votre aide

Reply

Marsh Posté le 27-05-2006 à 20:10:40   

Reply

Marsh Posté le 27-05-2006 à 21:38:38    

bonjour,
Si  j'ai bien compris...
Cette macro détecte la première cellule vide dans la première colonne :

Code :
  1. Sub test()
  2. i = Cells(65535, 1).End(xlUp).Row + 1
  3. Cells(i, 1) = "Nouvelle ligne"
  4. End Sub


A+


---------------
roger
Reply

Marsh Posté le 27-05-2006 à 22:00:44    

ok je teste ca lundi
j'ai pas le net au taf (stage) ; juste mon mail
 
là j'aurai ligne vide ok
mais comment imbriquer cette macro dans l'autre qui cherche les infos sur plusieurs onglets ?
 
je débute en VB


Message édité par Profil supprimé le 27-05-2006 à 22:02:08
Reply

Marsh Posté le 28-05-2006 à 04:51:08    

Là tu me demandes de lire dans le marc de café...


---------------
roger
Reply

Marsh Posté le 29-05-2006 à 10:30:01    

bonjour,
j'ai un peu le meme souci, je veut coller dans la premiere colonne vide trouvé
j'ai utilisé :
 
Cells(1, Cells.End(xlToRight).Column + 1).Activate
 
ou encore meme effet :
Range("a1" ).End(xlToRight)(1, 2).Select  
 
 
petit probleme :quand la feuille contien juste une colonne rempli,au lieu de me selectionner B1,il va prendre la derniere colonne (colonne 251)
Est ce qu'il y aurait une solution pour faire marcher quand il n'y a qu'une colonne rempli et encore mieu quand il n'y a rien dans la feuille excel,la le top c que sa selectionne A1...
 

Reply

Marsh Posté le 29-05-2006 à 12:30:01    

bonjour,
essaies :
i = Cells(1, 256).End(xlToLeft).Column
 
Toutefois tu devras faire un test complémentaire (avec des if) avant le
Cells(1,i).Activate
 
...car cette méthode réagit différement dans le cas d'une ligne (ou d'une colonne) vide.
A+
 

Reply

Marsh Posté le 29-05-2006 à 13:18:56    

merci, j'avais pas pensé a prendre le problème dans l'autre sens.

Reply

Marsh Posté le 02-06-2006 à 18:16:32    

moi j'ai fait qqch de ce genre (je n'ai pas le fichier sous la main donc de tête)
 
if [a2]="" then range("a1" ).select else selection.end.xl
activecell.activate
activecell.offset(0,1)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed