Incrementer les couper et coller dans une autre feuille

Incrementer les couper et coller dans une autre feuille - VB/VBA/VBS - Programmation

Marsh Posté le 10-10-2012 à 11:59:11    

Bonjour,
 
Je cherche à ce que toutes les lignes qui comporte le terme "X-" dans la feuille "datareport" soit coupé et collé les uns en dessous des autres (j'ai besoin de les utiliser ultérieurement) dans une autre feuille "X-OPEN"
 
J'ai déjà fait ceci mais le problème est qu'il sont collé les uns par dessus les autres, ci quelqu'un peux m'aider
 
Salutations,
 
Sub select_x_open()
 
Do
    Sheets("datareport" ).Select
    If Cells.Find(What:="x-*" ) Is Nothing Then
       Exit Do
    Else
       Cells.Find(What:="x-" ).Activate
       Selection.EntireRow.Cut
       Sheets("X-OPEN" ).Select
    ActiveSheet.Paste
 
    End If
Loop
 
End Sub

Reply

Marsh Posté le 10-10-2012 à 11:59:11   

Reply

Marsh Posté le 10-10-2012 à 13:20:49    

Perso je chercherai le dernier ligne vide avec :
iNbLigne = Sheets("X-OPEN" ).Range("A65000" ).End(xlUp).Row
 
ensuite tu te calles sur cette cellule
Sheets("X-OPEN" ).Cells(iNlLigne,1).Select
 
et tu colles (je sais pas si ActiveSheet.Paste marche)
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

Reply

Marsh Posté le 10-10-2012 à 13:41:39    

Sub select_x_open()
 
Do
    Sheets("datareport" ).Select
    If Cells.Find(What:="x-*" ) Is Nothing Then
       Exit Do
    Else
       Cells.Find(What:="x-" ).Activate
       Selection.EntireRow.Cut
       Sheets("X-OPEN" ).Select
       iNbLigne = Sheets("X-OPEN" ).Range("A65000" ).End(xlUp).Row
        Sheets("X-OPEN" ).Cells(iNlLigne, 1).Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
 
 
       
       
       
    ' ActiveSheet.Paste
 
    End If
Loop
 
End Sub
 
 
Donc maintenant j'ai collé ce code mais il me dit qu'il y a une erreur 1004.
Je pense que cela bloque au niveau du collage.
 
En attente de votre aide

Reply

Marsh Posté le 10-10-2012 à 13:52:04    

Sheets("X-OPEN" ).Select
   Rows(iNbLigne  & ":" & iNbLigne ).Select
   ActiveSheet.Paste
 
voila ça marche chez moi tu oublieras pas de declare le iNbLigne pour être plus propre


Message édité par boomy29 le 10-10-2012 à 14:03:02
Reply

Marsh Posté le 10-10-2012 à 13:56:38    

Il bug sur l'execution de la ligne  
Rows(iNbLigne  & ":" & iNbLigne ).Select  
 
avec l'erreur 1004.

Reply

Marsh Posté le 10-10-2012 à 14:03:55    

Sub select_x_open()
 Dim iNbLigne As Integer
Do
    Sheets("datareport" ).Select
    If Cells.Find(What:="x-*" ) Is Nothing Then
       Exit Do
    Else
       Cells.Find(What:="x-" ).Activate
       Selection.EntireRow.Cut
       Sheets("X-OPEN" ).Select
       iNbLigne = Sheets("X-OPEN" ).Range("A65000" ).End(xlUp).Row
       Sheets("X-OPEN" ).Select
       Rows(iNbLigne & ":" & iNbLigne).Select
       ActiveSheet.Paste
 
    End If
Loop
 
End Sub
 
si ça marche pas je vois pas

Reply

Marsh Posté le 10-10-2012 à 14:20:32    

Toujours au niveau de la ligne que je me trouve bloqué.
 
Rows(iNbLigne & ":" & iNbLigne).Select  
 
 
 

Reply

Marsh Posté le 10-10-2012 à 14:26:11    

remplace par  
Sheets("X-OPEN" ).Cells(iNbLigne, 1).Select  
 
ou met un msgbox pour tester la valeur de iNbLigne

Reply

Sujets relatifs:

Leave a Replay

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