pppppppppppppppppppppppppppppppppppppppp

nemisius

XLDnaute Nouveau
pppppppppppppppppppppppppppppppppppppppp
 
Dernière édition:
D

Denis

Guest
Re : Contourner le nombre maxi de feuilles (saturation mémoire)

Bonjour nemisius et le forum

Ici une réponse pour Xl2003
Limites et spécifications Excel - Excel - Office.com
Nombre maximal de feuilles par classeur Limité par la quantité de mémoire disponible

Bon courage et à+
Denis
 

chris

XLDnaute Barbatruc
Re : Contourner le nombre maxi de feuilles (saturation mémoire)

Bonjour

On ne peut supprimer les lignes ou les colonnes.

Donc reste :

  • Augmenter la mémoire physique mais si tu n'es pas le seul à utiliser le classeur, cela ne résout que sur ton poste
  • Si une seule colonne t'intéresse : intituler correctement la colonne et utiliser plusieurs colonnes pas feuille (en sautant une colonne entre 2 : avec 1024 colonnes un seul onglet peut tout contenir
De toute façon un classeur de 200 onglets (même de 63) est difficilement manipulable.

La principale question reste la vocation de cette compilation : le besoin précis peut déterminer l'approche...
 

Pierrot93

XLDnaute Barbatruc
Re : Contourner le nombre maxi de feuilles (saturation mémoire)

Re,

modifie la boucle comme suit :
Code:
            While fic <> ""
                If fic <> ThisWorkbook.Name Then
                    chemin = rep & fic
                    Workbooks.Open chemin, 0
                    Set Source = ActiveWorkbook.Sheets(1).Range("C9:C156")
                    Wf.Sheets.Add
                    Source.Copy
                    With Wf.Sheets(1)
                        .Cells(1).PasteSpecial Paste:=8
                        .Cells(1).PasteSpecial Paste:=xlPasteValues
                        Application.CutCopyMode = False
                    End With
                    
                    i = i + 1
                    If i = 20 Then ThisWorkbook.Save: i = 0
                    nbf = nbf + 1
                    
                    ActiveWorkbook.Close
                    End If
            fic = Dir
            Wend

avec déclaration de i en début de procédure...
Code:
Dim i As Integer
 

pierrejean

XLDnaute Barbatruc
Re : Contourner le nombre maxi de feuilles (saturation mémoire)

Bonjour à tous

En suivant l'idée de Chris (Bises :) )

Code:
Sub CommandButton_Importation1()
        Dim chemin As String
        Dim rep As String
        Dim fic As String
        Dim Wf As Workbook
        Dim source As Range
        Dim ndf As Integer


        rep = ThisWorkbook.Path & "\"
        
        Application.ScreenUpdating = False
        Application.EnableEvents = False
        Application.DisplayAlerts = False
        Application.Calculation = xlCalculationManual
        
        colonne = 1


        On Error GoTo fin


        Set Wf = ThisWorkbook
            nbf = 0
            fic = Dir(rep & "*.xls*")
            While fic <> ""
                If fic <> ThisWorkbook.Name Then
                    chemin = rep & fic
                    Workbooks.Open chemin, 0
                Set source = ActiveWorkbook.Sheets(1).Range("C9:C156")
                    'Wf.Sheets.Add
                    source.Copy
                With Wf.Sheets("Feuil1")
                    .Cells(1, colonne) = ActiveWorkbook.Name
                    .Cells(2, colonne).PasteSpecial Paste:=8
                    .Cells(2, colonne).PasteSpecial Paste:=xlPasteValues
                    Application.CutCopyMode = False
                End With
                    colonne = colonne + 2
                    nbf = nbf + 1
                    ActiveWorkbook.Close
                    End If
            fic = Dir
            Wend
fin:
        MsgBox "Procédure terminée, " & nbf & " feuilles ont été importées avec succès ", , "Importation"
        Application.ScreenUpdating = True
        Application.EnableEvents = True
        Application.Calculation = xlCalculationAutomatic
    End Sub
 

pierrejean

XLDnaute Barbatruc
Re : Contourner le nombre maxi de feuilles (saturation mémoire)

Re

Concernant ndf et nbf voir le # 1 ( je me suis contenté de recopier !!!)

Pour la colonne :
On copie d'abord en colonne A puis C puis E (simplement pour aérer ) dans la feuille 1
 

chris

XLDnaute Barbatruc
Re : Contourner le nombre maxi de feuilles (saturation mémoire)

Bonjour
Bise à Pierrejean:)

Aérer et permettre de trier ou filtrer plus facilement les colonnes qui sont ainsi indépendantes les unes des autres.

Mais comme tu ne nous as toujours pas dit le pourquoi de cet amalgame ...
 

Statistiques des forums

Discussions
312 482
Messages
2 088 766
Membres
103 955
dernier inscrit
mikaveli