Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
LSteph
Bonjour,
Là tu entre direct un objet range dans une variable en variant Alors se pose cette question
Tu veux supprimer les lignes vides réelles du Activesheet.usedrange ou tu veux créer un tableau variant ou seules soient prises en compte les lignes non vides
Cordialement.
-- LSteph
On 11 mar, 11:38, Jean Philippe leU wrote:
Bonjour, Je sais pas si c'est possible mais je voudrais effacer les lignes vides d'un tableau variant
Exemple de mon code
Dim PlageTem As Variant
Workbooks.Open Filename:="C:tmp" & FT, Format:=4 Max = ActiveSheet.UsedRange.Rows.Count - 1
Là tu entre direct un objet range dans une variable en variant
Alors se pose cette question
Tu veux supprimer les lignes vides réelles du Activesheet.usedrange
ou
tu veux créer un tableau variant ou seules soient prises en compte les
lignes non vides
Cordialement.
--
LSteph
On 11 mar, 11:38, Jean Philippe leU <jpurt...@gmail.com> wrote:
Bonjour,
Je sais pas si c'est possible mais je voudrais effacer les lignes
vides d'un tableau variant
Exemple de mon code
Dim PlageTem As Variant
Workbooks.Open Filename:="C:tmp" & FT, Format:=4
Max = ActiveSheet.UsedRange.Rows.Count - 1
Là tu entre direct un objet range dans une variable en variant Alors se pose cette question
Tu veux supprimer les lignes vides réelles du Activesheet.usedrange ou tu veux créer un tableau variant ou seules soient prises en compte les lignes non vides
Cordialement.
-- LSteph
On 11 mar, 11:38, Jean Philippe leU wrote:
Bonjour, Je sais pas si c'est possible mais je voudrais effacer les lignes vides d'un tableau variant
Exemple de mon code
Dim PlageTem As Variant
Workbooks.Open Filename:="C:tmp" & FT, Format:=4 Max = ActiveSheet.UsedRange.Rows.Count - 1
Là tu entre direct un objet range dans une variable en variant Alors se pose cette question
Tu veux supprimer les lignes vides réelles du Activesheet.usedrange ou tu veux créer un tableau variant ou seules soient prises en compte les lignes non vides
Cordialement.
-- LSteph
On 11 mar, 11:38, Jean Philippe leU wrote:
> Bonjour, > Je sais pas si c'est possible mais je voudrais effacer les lignes > vides d'un tableau variant
> J'ai cherché sur le forum mais rien vu > Merci a+
********************************************************************* Je voulais travaillé sur le tableau varian pour aller plus vite, car virer les lignes vides d'une feuille est relativement long. Bon comme j'ai pas vu de réponse j'ai modifié en amont pour ne plus avoir de ligne vide. a+ *****************************************************************
On 11 mar, 14:54, LSteph <gmlst...@gmail.com> wrote:
Bonjour,
Là tu entre direct un objet range dans une variable en variant
Alors se pose cette question
Tu veux supprimer les lignes vides réelles du Activesheet.usedrange
ou
tu veux créer un tableau variant ou seules soient prises en compte les
lignes non vides
Cordialement.
--
LSteph
On 11 mar, 11:38, Jean Philippe leU <jpurt...@gmail.com> wrote:
> Bonjour,
> Je sais pas si c'est possible mais je voudrais effacer les lignes
> vides d'un tableau variant
> J'ai cherché sur le forum mais rien vu
> Merci a+
*********************************************************************
Je voulais travaillé sur le tableau varian pour aller plus vite,
car virer les lignes vides d'une feuille est relativement long.
Bon comme j'ai pas vu de réponse
j'ai modifié en amont pour ne plus avoir de ligne vide.
a+
*****************************************************************
Là tu entre direct un objet range dans une variable en variant Alors se pose cette question
Tu veux supprimer les lignes vides réelles du Activesheet.usedrange ou tu veux créer un tableau variant ou seules soient prises en compte les lignes non vides
Cordialement.
-- LSteph
On 11 mar, 11:38, Jean Philippe leU wrote:
> Bonjour, > Je sais pas si c'est possible mais je voudrais effacer les lignes > vides d'un tableau variant
> J'ai cherché sur le forum mais rien vu > Merci a+
********************************************************************* Je voulais travaillé sur le tableau varian pour aller plus vite, car virer les lignes vides d'une feuille est relativement long. Bon comme j'ai pas vu de réponse j'ai modifié en amont pour ne plus avoir de ligne vide. a+ *****************************************************************
Jacquouille
Bonjour Et pourquoi ne filtres-tu pas sur place?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "Jean Philippe leU" a écrit dans le message de groupe de discussion :
On 11 mar, 14:54, LSteph wrote:
Bonjour,
Là tu entre direct un objet range dans une variable en variant Alors se pose cette question
Tu veux supprimer les lignes vides réelles du Activesheet.usedrange ou tu veux créer un tableau variant ou seules soient prises en compte les lignes non vides
Cordialement.
-- LSteph
On 11 mar, 11:38, Jean Philippe leU wrote:
> Bonjour, > Je sais pas si c'est possible mais je voudrais effacer les lignes > vides d'un tableau variant
> J'ai cherché sur le forum mais rien vu > Merci a+
********************************************************************* Je voulais travaillé sur le tableau varian pour aller plus vite, car virer les lignes vides d'une feuille est relativement long. Bon comme j'ai pas vu de réponse j'ai modifié en amont pour ne plus avoir de ligne vide. a+ *****************************************************************
Bonjour
Et pourquoi ne filtres-tu pas sur place?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"Jean Philippe leU" a écrit dans le message de groupe de discussion :
aa74e152-5671-41fc-95ad-f4d85a872b0d@w9g2000prg.googlegroups.com...
On 11 mar, 14:54, LSteph <gmlst...@gmail.com> wrote:
Bonjour,
Là tu entre direct un objet range dans une variable en variant
Alors se pose cette question
Tu veux supprimer les lignes vides réelles du Activesheet.usedrange
ou
tu veux créer un tableau variant ou seules soient prises en compte les
lignes non vides
Cordialement.
--
LSteph
On 11 mar, 11:38, Jean Philippe leU <jpurt...@gmail.com> wrote:
> Bonjour,
> Je sais pas si c'est possible mais je voudrais effacer les lignes
> vides d'un tableau variant
> J'ai cherché sur le forum mais rien vu
> Merci a+
*********************************************************************
Je voulais travaillé sur le tableau varian pour aller plus vite,
car virer les lignes vides d'une feuille est relativement long.
Bon comme j'ai pas vu de réponse
j'ai modifié en amont pour ne plus avoir de ligne vide.
a+
*****************************************************************
" Le vin est au repas ce que le parfum est à la femme." "Jean Philippe leU" a écrit dans le message de groupe de discussion :
On 11 mar, 14:54, LSteph wrote:
Bonjour,
Là tu entre direct un objet range dans une variable en variant Alors se pose cette question
Tu veux supprimer les lignes vides réelles du Activesheet.usedrange ou tu veux créer un tableau variant ou seules soient prises en compte les lignes non vides
Cordialement.
-- LSteph
On 11 mar, 11:38, Jean Philippe leU wrote:
> Bonjour, > Je sais pas si c'est possible mais je voudrais effacer les lignes > vides d'un tableau variant
> J'ai cherché sur le forum mais rien vu > Merci a+
********************************************************************* Je voulais travaillé sur le tableau varian pour aller plus vite, car virer les lignes vides d'une feuille est relativement long. Bon comme j'ai pas vu de réponse j'ai modifié en amont pour ne plus avoir de ligne vide. a+ *****************************************************************
MichD
Bonjour,
Essaie ceci :
'----------------------------------------------- Sub test() Dim DerLig As Long, DerCol As Integer, Rg As Range Dim Sh As Worksheet, PlageTem As Variant, Rg1 As Range
Workbooks.Open Filename:="C:tmp" & FT, Format:=4
On Error Resume Next With ActiveSheet DerCol = .Cells.Find(What:="*", _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious).Column DerLig = .Cells.Find(What:="*", _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row Set Rg = .Range("A1", .Cells(DerLig, DerCol)) End With If Err <> 0 Then Err = 0 MsgBox "Opération annulée. Plage de cellules indéfinies" Exit Sub End If Application.ScreenUpdating = False
'Ajout d'une feuille Set Sh = Worksheets.Add Rg.Copy Sh.Range("A1")
With Sh 'Définit où on ajoute les formules Set Rg1 = .Range(.Cells(1, DerCol + 1), .Cells(DerLig, DerCol + 1)) End With 'Insère la formule dans la plage Rg1.Formula = "=if(countA(" & Rg1(1).Offset(, -Rg.Columns.Count). _ Resize(, Rg.Columns.Count).Rows(1).Address(0, 0) & ")=0,""E"",1)"
'Masque les lignes qui affiche un résultat "E" Rg1.SpecialCells(xlCellTypeFormulas, 2).EntireRow.Delete Rg1.Clear PlageTem = Sh.Range("A1").CurrentRegion Application.DisplayAlerts = False Sh.Delete Application.DisplayAlerts = True
'pour tester que PlageTem contient seulement ce que tu désires 'tu peux coller ta plage dans une feuille Cells(1, DerCol + 2).Resize(UBound(PlageTem, 1), UBound(PlageTem, 2)) = PlageTem
Application.ScreenUpdating = True End Sub '-----------------------------------------------
'-----------------------------------------------
Sub test()
Dim DerLig As Long, DerCol As Integer, Rg As Range
Dim Sh As Worksheet, PlageTem As Variant, Rg1 As Range
Workbooks.Open Filename:="C:tmp" & FT, Format:=4
On Error Resume Next
With ActiveSheet
DerCol = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByColumns, _
SearchDirection:=xlPrevious).Column
DerLig = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
Set Rg = .Range("A1", .Cells(DerLig, DerCol))
End With
If Err <> 0 Then
Err = 0
MsgBox "Opération annulée. Plage de cellules indéfinies"
Exit Sub
End If
Application.ScreenUpdating = False
'Ajout d'une feuille
Set Sh = Worksheets.Add
Rg.Copy Sh.Range("A1")
With Sh
'Définit où on ajoute les formules
Set Rg1 = .Range(.Cells(1, DerCol + 1), .Cells(DerLig, DerCol + 1))
End With
'Insère la formule dans la plage
Rg1.Formula = "=if(countA(" & Rg1(1).Offset(, -Rg.Columns.Count). _
Resize(, Rg.Columns.Count).Rows(1).Address(0, 0) & ")=0,""E"",1)"
'Masque les lignes qui affiche un résultat "E"
Rg1.SpecialCells(xlCellTypeFormulas, 2).EntireRow.Delete
Rg1.Clear
PlageTem = Sh.Range("A1").CurrentRegion
Application.DisplayAlerts = False
Sh.Delete
Application.DisplayAlerts = True
'pour tester que PlageTem contient seulement ce que tu désires
'tu peux coller ta plage dans une feuille
Cells(1, DerCol + 2).Resize(UBound(PlageTem, 1), UBound(PlageTem, 2)) = PlageTem
Application.ScreenUpdating = True
End Sub
'-----------------------------------------------
'----------------------------------------------- Sub test() Dim DerLig As Long, DerCol As Integer, Rg As Range Dim Sh As Worksheet, PlageTem As Variant, Rg1 As Range
Workbooks.Open Filename:="C:tmp" & FT, Format:=4
On Error Resume Next With ActiveSheet DerCol = .Cells.Find(What:="*", _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious).Column DerLig = .Cells.Find(What:="*", _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row Set Rg = .Range("A1", .Cells(DerLig, DerCol)) End With If Err <> 0 Then Err = 0 MsgBox "Opération annulée. Plage de cellules indéfinies" Exit Sub End If Application.ScreenUpdating = False
'Ajout d'une feuille Set Sh = Worksheets.Add Rg.Copy Sh.Range("A1")
With Sh 'Définit où on ajoute les formules Set Rg1 = .Range(.Cells(1, DerCol + 1), .Cells(DerLig, DerCol + 1)) End With 'Insère la formule dans la plage Rg1.Formula = "=if(countA(" & Rg1(1).Offset(, -Rg.Columns.Count). _ Resize(, Rg.Columns.Count).Rows(1).Address(0, 0) & ")=0,""E"",1)"
'Masque les lignes qui affiche un résultat "E" Rg1.SpecialCells(xlCellTypeFormulas, 2).EntireRow.Delete Rg1.Clear PlageTem = Sh.Range("A1").CurrentRegion Application.DisplayAlerts = False Sh.Delete Application.DisplayAlerts = True
'pour tester que PlageTem contient seulement ce que tu désires 'tu peux coller ta plage dans une feuille Cells(1, DerCol + 2).Resize(UBound(PlageTem, 1), UBound(PlageTem, 2)) = PlageTem
Application.ScreenUpdating = True End Sub '-----------------------------------------------