Créez des flashcards à partir de Word !

Comment convertir un tableau Word en flashcards Anki ? # Converting Word to Anki (english version here)


    Pour créer des cartes Anki, il est normalement nécessaire de les faire une par une, ce qui ne permet pas d'avoir une vision d'ensemble de ses cartes, ni de les ordonner. Pour palier à cela, il est possible de construire un tableau Excel, permettant d'importer d'un seul coup de nombreuses cartes mais cette méthode ne permettait ni d'ajouter des couleurs avant l'importation, ni de faire des retours à la ligne au sein d'une carte.

Après des semaines de recherche et de programmation, je suis heureux de vous présenter un moyen de convertir un tableau à deux colonnes (correspondant respectivement aux rectos et aux versos des cartes) en langage html puis de l'importer dans Anki, tout en conservant le formatage du texte ! (gras, italique, souligné, couleurs…)

Voici la procédure à suivre pour réaliser des cartes Anki avec Word.

Utilisez ce document Word (téléchargeable ici) qui contient déjà un tableau à deux colonnes ainsi que le programme (la macro) nécessaire pour réaliser ce tutoriel. Cliquez sur "activer le contenu" si cela vous est demandé. Faites vos cartes en ajoutant autant de lignes que nécessaire avec, à gauche, les rectos, et à droite, les versos.

Formatez le texte comme vous le souhaitez en utilisant par exemple les raccourcis claviers (gras = Ctrl+g, italique = Ctrl+i, souligné = Ctrl+u…) et ajoutez des couleurs : mon modèle contient déjà des raccourcis pour certaines couleurs (Rouge = F2, Vert = F3, Bleu = F4, Violet = F5, Orange = F6)* (si les raccourcis ne fonctionnent pas, lisez la note en fin d'article).

Sauvegardez votre document pour avoir une version "propre" de votre travail.

 Lancez la première macro de conversion en appuyant sur le bouton "Text Optimizer". Cette macro permet de convertir les tirets automatiques en texte plein et de convertir les retours à la ligne en code html.**

Copier l'ensemble du tableau (de la première ligne à la dernière) puis collez-le dans la première cellule (cellule A2) du fichier Excel "Convert to html" téléchargeable ici. Vérifiez que le tableau se répartit bien sur deux colonnes. Cliquez sur "activer le contenu" si demandé puis lancez la seconde macro en appuyant sur le bouton "Convert to html"

Une barre de progression apparait montrant l'avancement de la conversion. En raison de la complexité du code de cette macro, et en fonction du nombre total de lignes à traiter (si > 40 lignes), Excel peut apparaitre comme ne répondant plus et la barre de progression peut parfois disparaitre : ne vous inquiétez pas si cela arrive, la conversion se poursuit quand même (profitez-en pour faire une petite pause, préparez un café ou une tisane 😉). Seule l'apparition de la fenêtre indiquant "Conversion completed" confirme la fin de la conversion.

Allez dans l'onglet "Fichier", "Enregistrer sous" puis "Bureau" (par exemple), enregistrez le document en choisissant le type de fichier "CSV UTF-8 (délimité par des virgules)". Fermez le document Excel.

Ouvrez Anki, allez dans "Fichier" puis "Importer", choisissez le document csv enregistré à l'instant, modifiez le paquet et le type de note (par exemple celui-ci 😉). Veillez à bien cocher "Tolérer du HTML dans les champs" et cliquez sur "Importer".

Vos flashcards sont maintenant prêtes à être travaillées et sont formatées comme dans le document Word. Mission accomplie ! (Vous pouvez fermer le document Word sans enregistrer si vous avez bien fait l'étape 2)

Remarques :

- Pour ajouter des images sur vos cartes, la seule solution est d'ajouter le code <img src="nom.extension"> (attention, l'extension doit être strictement identique : .png, .jpg... et Anki est sensible à la casse) sur le document Word et de placer l'image correspondante dans le dossier médias d'Anki (C:\Users\NOM\AppData\Roaming\Anki2\NOM\collection.media). Pour accéder au dossier AppData, qui est caché par défaut, le plus simple est de taper %AppData% dans la zone de recherche qui est à côté du menu Démarrer. 

- Il faut éviter de commencer un recto ou un verso d'une carte par un tiret (-) car il risquerait d'être reconnu comme un début de formule par Excel, ce qui conduirait à un échec du programme

Notes :

* Vous pouvez modifier / ajouter des raccourcis couleurs en allant dans l'onglet "Accueil", partie "Style", clic-droit sur un style, "modifier", définir le formatage dans la partie haute si besoin puis "Format", "Touche de raccourci", "Nouvelle touche de raccourci".

** Sinon, dans le cas où vous souhaitez créer votre propre tableau et appliquer manuellement le programme, il faut accéder à l'onglet développeur (Ce dernier est caché par défaut, pour le faire apparaitre, il faut aller dans "Fichier", "Options", Onglet "Personnaliser le ruban", et cocher la case "Développeur" à droite). Dans l'onglet développeur, appuyez sur "Virtual Basic" puis faites un clic-droit sur le dossier "Modules" dans le panel de gauche puis cliquez sur "Importer un fichier" et importez le fichier suivant : macro anki. Vous pourrez alors exécuter la macro grâce au panel "Macros" de l'onglet "Développeur".


N'hésitez pas à me faire part de vos questions et remarques dans les commentaires ! Même un petit merci, ça fait toujours plaisir !

Abonnez-vous à ce blog pour être informé des futures publications !

Commentaires

  1. Merci Corentin ! Ça me sera assurément très utile ;)

    RépondreSupprimer
  2. Il est également possible de convertir des tableurs en flashcartes. La procédure d'importation est plus facile, mais l'écriture des cartes est, je pense, plus compliqué.
    C'est beau de voir du monde travailler sur ce logiciel.

    RépondreSupprimer
  3. Bonjour, j'ai essayé de faire la manip mais avec libre Office, évidemment, ça ne marche pas. Est-ce que ce serait beaucoup de taff de faire une version libre Office ? Ce serait dans l'état d'esprit du logiciel libre en plus 🙂 En tout cas bravo pour le travail, ça a l'air top !

    RépondreSupprimer
  4. Salut, est-ce que tu sais comment insérer un texte html sur Anki iOS ? Merci d’avance !

    RépondreSupprimer
    Réponses
    1. Pour l'instant, cette méthode ne fonctionne malheureusement qu'avec la suite Office. Le procédé est très certainement le même sur mac.
      Que cherches-tu à faire exactement ?

      Supprimer
  5. it isnt working for some reason.. when I click the convert to html a debugging thing opens. it sais there is a problem with If cel.Value <> "" Then cel = fnConvert2HTML(cel)
    i think..

    RépondreSupprimer
    Réponses
    1. Hi ! Would you send me the excel file you are trying to convert to ankipaces.newsletter[at]gmail.com so I can try to find where the issue is coming from ?

      Supprimer
  6. Merci beaucoup, l'importation ne se fait pas :/ Une fois que je clique sur "importer", une petite roulette apparait puis disparait et ensuite plus rien, la page reste vierge et grise

    RépondreSupprimer
    Réponses
    1. Difficile de savoir ce qui pourrait poser problème sans avoir ton tableau excel. Si tu veux, je peux regarder pourquoi cela ne fonctionne pas (ankipaces.newsletter[at]gmail.com). Sinon, essaye avec seulement quelques cartes pour voir si ce n'est pas un caractère spécial, non reconnu par Anki, dans une de tes cartes, qui bloque la conversion.

      Supprimer
  7. Je crois que les macro ne marchent pas sur les fichiers que j'ai téléchargés : lorsque j'importe le fichier, seulement la première phrase (avant de commencer avec des puces ou tirés) est retenue pour faire une carte

    RépondreSupprimer
    Réponses
    1. J'ai réessayé et cela fonctionne toujours. Par contre, Microsoft bloque depuis quelques temps, par sécurité, les macros provenant d'un téléchargement internet. Mais on peut les débloquer en suivant la procédure suivante : https://learn.microsoft.com/fr-fr/deployoffice/security/internet-macros-blocked.

      Supprimer

Enregistrer un commentaire

Posts les plus consultés de ce blog

Créer de magnifiques flashcards avec Anki !

Les extensions indispensables du logiciel Anki ! (Version 2.0)

Réussir la PACES avec la méthode geek !

Avoir un fond d'écran dynamique dans Anki !