Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Fichier devrais être plus petit

3 réponses
Avatar
pellet15
Bonjour =E0 tous

J'ai un fichier trop gros par rapport a d'autre semblabe.
Lorsque je fait CTRL-FIN cela me descend a la ligne 65536
la dernier cellule devrais =EAtre 602.....

j'ai ex=E9cuter la macros suivante et rien ne change...

Sub R=E9initUsedRange()
ActiveSheet.UsedRange
End Sub

Comment faire pour qu'il ne soit pas trop gros (7710ko) ?

Merci

3 réponses

Avatar
DanielCo
Bonjour,
Sub Nettoie()
Dim Sh As Worksheet, DerLigne As Long, DerCol As Long
For Each Sh In Worksheets
DerLigne = Sh.Cells.Find("*", , , , xlByRows, xlPrevious).Row +
1
DerCol = Sh.Cells.Find("*", , , , xlByColumns,
xlPrevious).Column + 1
Sh.Range(Sh.Cells(DerLigne, 1), Sh.Cells(Sh.Rows.Count,
Sh.Columns.Count)).Delete
Sh.Range(Sh.Cells(1, DerCol), Sh.Cells(Sh.Rows.Count,
Sh.Columns.Count)).Delete
Next Sh
End Sub
Daniel


Bonjour à tous

J'ai un fichier trop gros par rapport a d'autre semblabe.
Lorsque je fait CTRL-FIN cela me descend a la ligne 65536
la dernier cellule devrais être 602.....

j'ai exécuter la macros suivante et rien ne change...

Sub RéinitUsedRange()
ActiveSheet.UsedRange
End Sub

Comment faire pour qu'il ne soit pas trop gros (7710ko) ?

Merci
Avatar
pellet15
Bonjour DanielCo

La macro bloc sur la ligne :

Sh.Range(Sh.Cells(DerLigne, 1), Sh.Cells(Sh.Rows.Count, Sh.Columns.Count)). Delete

avec le message : Erreur d'exécution '1004';
La méthode Delete de la classe Range a échoué.


les colonne a droite se masque bien, mais pas en bas de la dernière ligne la ou il y a une cellule qui contient une donné.
Merci
---------------


Le lundi 9 juillet 2012 12:14:18 UTC-4, DanielCo a écrit :
Bonjour,
Sub Nettoie()
Dim Sh As Worksheet, DerLigne As Long, DerCol As Long
For Each Sh In Worksheets
DerLigne = Sh.Cells.Find("*", , , , xlByRows, xlPrevious).Row +
1
DerCol = Sh.Cells.Find("*", , , , xlByColumns,
xlPrevious).Column + 1
Sh.Range(Sh.Cells(DerLigne, 1), Sh.Cells(Sh.Rows.Count,
Sh.Columns.Count)).Delete
Sh.Range(Sh.Cells(1, DerCol), Sh.Cells(Sh.Rows.Count,
Sh.Columns.Count)).Delete
Next Sh
End Sub
Daniel


> Bonjour à tous
>
> J'ai un fichier trop gros par rapport a d'autre semblabe.
> Lorsque je fait CTRL-FIN cela me descend a la ligne 65536
> la dernier cellule devrais être 602.....
>
> j'ai exécuter la macros suivante et rien ne change...
>
> Sub RéinitUsedRange()
> ActiveSheet.UsedRange
> End Sub
>
> Comment faire pour qu'il ne soit pas trop gros (7710ko) ?
>
> Merci
Avatar
DanielCo
Essaie comme ceci :

Sub Nettoie()
Dim sh As Worksheet, DerLigne As Long, DerCol As Long
For Each sh In Worksheets
On Error Resume Next
DerLigne = sh.Cells.Find("*", , , , xlByRows, xlPrevious).Row +
1
DerCol = sh.Cells.Find("*", , , , xlByColumns,
xlPrevious).Column + 1
On Error GoTo 0
If Err.Number <> 0 Then
Err.Clear
ElseIf sh.ProtectContents = False Then
sh.Range(sh.Cells(DerLigne, 1), sh.Cells(sh.Rows.Count,
sh.Columns.Count)).Delete
sh.Range(sh.Cells(1, DerCol), sh.Cells(sh.Rows.Count,
sh.Columns.Count)).Delete
End If
Next sh
End Sub

Daniel


Bonjour DanielCo

La macro bloc sur la ligne :

Sh.Range(Sh.Cells(DerLigne, 1), Sh.Cells(Sh.Rows.Count,
Sh.Columns.Count)).Delete

avec le message : Erreur d'exécution '1004';
La méthode Delete de la classe Range a échoué.


les colonne a droite se masque bien, mais pas en bas de la dernière ligne la
ou il y a une cellule qui contient une donné. Merci
---------------


Le lundi 9 juillet 2012 12:14:18 UTC-4, DanielCo a écrit :
Bonjour,
Sub Nettoie()
Dim Sh As Worksheet, DerLigne As Long, DerCol As Long
For Each Sh In Worksheets
DerLigne = Sh.Cells.Find("*", , , , xlByRows, xlPrevious).Row +
1
DerCol = Sh.Cells.Find("*", , , , xlByColumns,
xlPrevious).Column + 1
Sh.Range(Sh.Cells(DerLigne, 1), Sh.Cells(Sh.Rows.Count,
Sh.Columns.Count)).Delete
Sh.Range(Sh.Cells(1, DerCol), Sh.Cells(Sh.Rows.Count,
Sh.Columns.Count)).Delete
Next Sh
End Sub
Daniel


Bonjour à tous

J'ai un fichier trop gros par rapport a d'autre semblabe.
Lorsque je fait CTRL-FIN cela me descend a la ligne 65536
la dernier cellule devrais être 602.....

j'ai exécuter la macros suivante et rien ne change...

Sub RéinitUsedRange()
ActiveSheet.UsedRange
End Sub

Comment faire pour qu'il ne soit pas trop gros (7710ko) ?

Merci