Autres Créer tableau automatique et séparation de texte

  • Initiateur de la discussion Initiateur de la discussion Moran
  • 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 !

Moran

XLDnaute Nouveau
Bonjour à tous,

J'aurais besoin de votre aide.

Je souhaiterais que le tableau présent dans l'onglet "Form Submissions" se modifie automatiquement pour obtenir le tableau de l'onglet "Résultat".

Je suis désolé de vous demander ça de cette manière, mais je ne sois pas comment l'expliquer simplement...

E vous remerciant !
 

Pièces jointes

J'ai d'abord converti to fichier en tableau structuré...
VB:
Sub Transfert()
  Dim i As Long, sh As Worksheet, j As Byte, mavar, n As Long, var1 'déclaration des variables
  Set sh = Sheets("Résultat") affectation de la feuille Résultat à la variable sh
  For i = 2 To Range("A" & Rows.Count).End(xlUp).Row 'boucle de la ligne 2 à la dernière ligne
    If [T_resultat].Item(1, 1) <> "" Then n = [T_resultat].Rows.Count + 1 Else n = 1 'affectation d'une nouvelle ligne
    For j = 1 To 9 'boucle sur les colonnes 1 à 9
      [T_resultat].Item(n, j) = Cells(i, j).Value'nc'est la ligne, j c'est la colonne, i c'est la ligne de la feuille "form...."
      [T_resultat].Item(n + 1, j) = Cells(i, j).Value
    Next 'fin de la boucle
    var1 = Split(Cells(i, 10).Value, ",") split coupe la cellule en fonction du délimiteur (ici la ,)
'résultat dans var1(0) et var1(1)
    mavar = Split(var1(0), "-")                       'ici le délimiteur est le moins- soit 3 résultats
      [T_resultat].Item(n, 10) = mavar(0)
      [T_resultat].Item(n, 11) = mavar(1)
      [T_resultat].Item(n, 12) = mavar(2)
      [T_resultat].Item(n, 13) = Cells(i, 10)
    mavar = Split(var1(1), "-") 'idem
      [T_resultat].Item(n + 1, 10) = mavar(0)
      [T_resultat].Item(n + 1, 11) = mavar(1)
      [T_resultat].Item(n + 1, 12) = mavar(2)
      [T_resultat].Item(n + 1, 13) = Cells(i, 10)
      For j = 11 To 29                    'boucle sur les colonnes 11 à 29
        If j = 23 Then            'si colonne 23 texte devient numérique
         [T_resultat].Item(n, j + 3) = Val(Cells(i, j).Value)
         [T_resultat].Item(n + 1, j + 3) = Val(Cells(i, j).Value)
        Else
         [T_resultat].Item(n, j + 3) = Cells(i, j).Value
         [T_resultat].Item(n + 1, j + 3) = Cells(i, j).Value
       End If
      Next
  Next
End Sub
A+ François
 
Bonjour à tous,
J'ai un problème avec le fichier.
Lorsque je fais le transfert, toutes les infos de la colonne J ne se retrouvent pas dans l'onglet résultat et tout se s'arrête à la ligne 6 du 1er onglet.
J'ai chercher comment résoudre le problème, mais en vain.
Pourriez-vous m'aider ?
Merci !
 

Pièces jointes

Merci beaucoup !
Par contre, j'ai un problème : je ne peut pas utilisé le fichier, car "Microsoft a bloqué l'exécution des macros, car la source de ce fichier n'est pas approuvée."
J'autorise pourtant les macros, je ne vois pas d'où peut venir ce problème.
 

Modifier les paramètres de sécurité des macros dans Excel

Découvrez entre autres comment modifier les paramètres qui activent ou désactivent les macros dans Excel. Vous pouvez modifier les paramètres de sécurité des macros pour contrôler l’exécution des macros à l’ouverture d’un classeur.
support.microsoft.com
support.microsoft.com
A+ François
Ou ouvre un autre fichier
copie la macro sur la feuille adéquat (onglet/visualiser le code)
A+ François
ce qui est bizarre c'est que ça marché la première fois...
 
- 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

Réponses
16
Affichages
532
Réponses
5
Affichages
262
Retour