Rassemblement automatique des cellules differentes

Bonjour

7anbsp-brut.zip (1.40 Mo)

pourriez vous m'aider a rassembler plusieurs paramètres qui correspond a chaque code dans la colonne A de mon fichier ci joint

1- les lignes qui commencent par WO doivent être supprimés.

2- la commande attendu est (="anbsi:b="+code dans la col A + tous les paramètres dans la même ligne + les paramètres au dessous de la ligne s'ils existent)

on sépare ses paramètres par (,) et on ferme par (;)

merci d'avance pour votre soutien.

Salut Redamento,

- je recherche d'abord la cellule "OPERATING" pour situer la première ligne exploitable : ce mot figure-t-il toujours sur tes BDD ?
- je laisse les lignes "WO" en place.

Un double-clic sur 'anbsp_Brut' démarre la macro, résultats en 'Extract'

    For x = 2 To UBound(tTab, 1)
        If Left(tTab(x, 1), 2) <> "WO" Then
            If (IsNumeric(Left(tTab(x, 1), 1)) And tTab(x, 1) <> "") Or x = UBound(tTab, 1) Then
                If tTab(2, 8) = "" Then tTab(2, 8) = "!Table: B= " & Split(tTab(x, 1), "-")(0) & ";"
                If lgIdx > 0 And tTab(lgIdx, 8) <> "" Then tTab(lgIdx, 8) = tTab(lgIdx, 8) & ";"
                lgIdx = x
            End If
            For y = 2 To 7
                If tTab(x, y) <> "" Then _
                    tTab(lgIdx, 8) = IIf(tTab(lgIdx, 8) = "", _
                        "anbsi:b=" & tTab(lgIdx, 1) & "," & tTab(x, y), _
                        tTab(lgIdx, 8) & "," & tTab(x, y))
            Next
        End If
    Next


A+

bonjour

merci curulis57 pour votre support

le script ca marche bien, sauf l'indication de n de table "table: bo=xx;" s'affiche une seul fois pour la 1ere table 0, pour les autres tables non.

résultat attendu:

!Table: B= 0; ---> au dessus des données de la (table 0) 0-xx

!Table: B= 4; ---> au dessus des données de la (table 4) 4-xx

!Table: B= 5; ---> au dessus des données de la (table 5) 5-xx

!Table: B= 6; ---> au dessus des données de la (table 6) 6-xx

!Table: B= 7; ---> au dessus des données de la (table 7) 7-xx

etc.…..

merci d'avance.

Salut Redamento,

fichier corrigé !

    For x = 2 To UBound(tTab, 1)
        If InStr(tTab(x, 1), "-") > 0 Or x = UBound(tTab, 1) Then
            If x < UBound(tTab, 1) And (CInt(Split(tTab(x, 1), "-")(0)) <> CInt(Split(vNum, "-")(0))) Then _
                lgIdx = lgIdx + IIf(lgIdx = 0, 2, 1): _
                vNum = tTab(x, 1): _
                tExtract(lgIdx, 8) = "!Table: B= " & Split(tTab(x, 1), "-")(0) & ";"
            If tExtract(lgStep, 8) <> "" Then tExtract(lgStep, 8) = tExtract(lgStep, 8) & ";"
            lgStep = lgIdx + 1
        End If
            '
        If x < UBound(tTab, 1) Then
            lgIdx = lgIdx + 1
            For y = 1 To 7
                If lgIdx = 3 Then tExtract(1, y) = tTab(1, y)
                tExtract(lgIdx, y) = IIf(Left(tTab(x, 1), 2) = "WO", "-", tTab(x, y))
                If y > 1 And Left(tTab(x, 1), 2) <> "WO" And tTab(x, y) <> "" Then _
                    tExtract(lgStep, 8) = IIf(tExtract(lgStep, 8) = "", _
                        "anbsi:b=" & tTab(x, 1) & "," & tTab(x, y), _
                        tExtract(lgStep, 8) & "," & tTab(x, y))
            Next
        End If
    Next


A+

Rechercher des sujets similaires à "rassemblement automatique differentes"