erreur 1004 mise en forme tableau

  • Initiateur de la discussion Initiateur de la discussion ptifanou
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

P

ptifanou

Guest
Bonjour,
j'ai un problème sur un classeur avec 2 feuilles, 1 macro pour chaques feuilles qui importe les données d'un fichier texte et les met en forme:feuil1 macro prev et feuil 2 macro realiser.
J'ai rajouter une macro "miseenformedetableau" pour mettre en forme tableau les données extraites, et malheureusement je tombe sur une erreur 1004 :
1582644663772.png

je ne comprends pas pourquoi!!!
 

Pièces jointes

Re,

oui effectivement le fichier texte n'a pas l'air très compatible avec power query.
Désolé.

Macro à tester.
Code:
Sub MFC_Tableau()

    Feuil2.Activate
    Range("A1").Select
    Application.CutCopyMode = False
    ActiveSheet.QueryTables("GASE-SELE_59147212").Delete
    ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$I$25"), , xlYes).Name = _
        "Tableau2"
    Range("Tableau2[#All]").Select
    ActiveSheet.ListObjects("Tableau2").TableStyle = "TableStyleLight1"
End Sub

Le message vient du fait qu'il y a une requête active dans la plage de données.
d'ou le : ActiveSheet.QueryTables("GASE-SELE_59147212").Delete
Cordialement.
 
Dernière édition:
Les cellules de la colonne A pouvant contenir des blancs, on les supprime.
La création de table dans miseenformede tableau échouait parce que la Querytable créée dans la sub PREV n'était pas détruite. Le message d'erreur était assez explicite.
Sub PREV corrigée:
VB:
Sub PREV()
    ActiveSheet.UsedRange.Clear
'convertir et extraire .txt
With ActiveSheet.QueryTables.Add(Connection:= _
       "TEXT;C:\Users\MVVD2765\Desktop\EXCEL 2\ATTACHEMENTS\REALISER\GASE-SELE_59147212.TXT" _
        , Destination:=Range("$A$1"))
        .Name = "OEIE.AMS_900210.txt"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 1252
        .TextFileStartRow = 1
        .TextFileParseType = xlDelimited
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = False
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileOtherDelimiter = "|"
        .TextFileColumnDataTypes = Array(1)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
        .Delete     'On supprime la Querytable
    End With
    'supprimer colonnes
    
    Columns("A:B").Delete Shift:=xlToLeft
    
    'supprimer ligne au dessus de asp
    Dim p As Range
    On Error Resume Next
    Set p = Columns(1).Cells.Find("asp")
    Rows("1:" & p.Row - 1).EntireRow.Delete
    'supprime tout en dessous de f/mat
    On Error Resume Next
    Range(Cells(Rows.Count, 1), Columns(1).Cells.Find("F/Mat").Offset(1)).EntireRow.Delete
    ' On supprime les espaces blancs dans la colonne A
    Range("A:A").Replace What:=" ", Replacement:="", LookAt:=xlPart, _
            SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat:=False, _
            ReplaceFormat:=False
    'supprime ligne vides
    Range("A:A").SpecialCells(xlCellTypeBlanks).EntireRow.Delet
End Sub
Cordialement,
--
LR
 
Bonjour merci a vous,
serait il possible remplacer
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;C:\Users\MVVD2765\Desktop\EXCEL 2\ATTACHEMENTS\REALISER\GASE-SELE_59147212.TXT"
par
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;listbox1.value"
pour créér un bouton dans un userform afin de lancer cette macro selon le nom d'un fichier présent dans une listbox?
cdlt
 
Les listes box contiennent des noms de fichiers indexé depuis un dossier windows, par exemple oeie. Ams900210. Txt
Le bouton en dessous de listbox me servirait à lancer la macro prev, c à d insérer dans une feuille ce fichier en le mettant en forme.
Et je voudrais que cette macro récupère le nom du fichier sur le lequel je suis positionner dans ma listbox pour ouvrir ce fichier.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour