image

Dans cet article, nous allons apprendre à copier les données d’un classeur vers différentes feuilles dans Microsoft Excel 2010.

Pour copier des données d’Excel dans un fichier à l’aide de VBA, nous devons accéder à l’application Word à l’aide d’Excel VBA. Dans ce didacticiel, nous allons apprendre à ouvrir une application Word, à ajouter un document et à copier-coller des données d’Excel.

Dans cet article, nous utiliserons la méthode Early Binding pour créer un objet d’application Word au lieu d’utiliser la liaison tardive. Vous pouvez en savoir plus ici en détail.

Le processus de copie de données Excel dans un fichier Word à l’aide d’Excel VBA Pour copier des données d’Excel vers un fichier Word à l’aide de VBA, nous devons d’abord ouvrir l’application Word bien sûr. Ajoutez-y ensuite un document (si vous voulez un nouveau document). Copiez les données du fichier Excel. Sélectionnez le paragraphe sur le document et collez-le.Enfin, enregistrez et fermez le document. Chacune de ces étapes peut être effectuée facilement à partir d’Excel. Vous n’aurez pas besoin d’interagir avec le document Word.

Commençons par un exemple sans aller plus loin dans la théorie. Parce qu’Iron Man a dit: « Parfois, il faut courir avant de pouvoir marcher ».

Exemple: Coller des données Excel dans Word à l’aide de VBA Le code ci-dessous est un exemple de la façon dont vous pouvez copier une plage d’Excel et la coller dans un nouveau document Word et l’enregistrer sur le lecteur pour l’utiliser plus tard
'VBA Code To Write to Copy data from Excel to A Document

Sub ExcelToWord()

'Using Early Binding

Dim wordApp As Word.Application

Dim mydoc As Word.Document





'Creating a new instance of word only if there no other instances

Set wordApp = New Word.Application





'Making word App Visible

wordApp.Visible = True



'Creating a new document

Set mydoc = wordApp.Documents.Add()



'copying the content from excel sheet

ThisWorkbook.Worksheets("sheet1").Range("A1:g20").Copy

'Pasting on the document

mydoc.Paragraphs(1).Range.PasteExcelTable _

LinkedToExcel:=False, _

WordFormatting:=False,

RTF:=False

'saving the document

mydoc.SaveAs2 "MyDoc"



'closing the document

mydoc.Close



'Emptying the Clipboard

CutCopyMode = False



End Sub

Explication du code:

Eh bien, j’ai expliqué chaque étape du code lui-même à l’aide de commentaires, mais parlons des lignes que nous avons utilisées dans ce sous.

'Created variables of word application and document type

Dim wordApp As Word.Application

Dim mydoc As Word.Document

Ici, nous avons déclaré deux variables des types requis. Nous pouvons le faire car nous avons déjà ajouté la référence au mot application. Vous pouvez le faire en accédant aux outils du menu. Rechercher l’option de références, puis recherchez la référence de mot.

image

'Creating a new instance of word only if there no other instances

Set wordApp = New Word.Application





'Making word App Visible

wordApp.Visible = True



'Creating a new document

Set mydoc = wordApp.Documents.Add()

Dans la première ligne ci-dessus, nous intensifions la variable wordApp avec un objet de type Word.App à l’aide du mot clé New. Cela ouvrira l’application Word.

Dans la deuxième ligne, nous rendons le mot application visible afin que nous puissions travailler avec lui.

Dans la ligne suivante, nous ajoutons un nouveau document à l’application Word à l’aide de la fonction Word.Documents.Add (). Ceci est stocké dans la variable mydoc.

'copying the content from excel sheet

ThisWorkbook.Worksheets (« sheet1 »). Range (« A1: G20 »). Copy Ici, nous copions simplement une plage d’Excel. Vous devez l’avoir fait avant. Il est stocké dans le presse-papiers.

'Pasting on the document

mydoc.Paragraphs(1).Range.PasteExcelTable _

LinkedToExcel:=False, _

WordFormatting:=False,

RTF:=False

Nous utilisons la méthode PasteExcelTable de la classe Paragraph.Range de mydoc pour coller des données à partir du presse-papiers.

'saving the document

mydoc.SaveAs2 "MyDoc"



'closing the document

mydoc.Close



'Emptying the Clipboard

CutCopyMode = False

Nous enregistrons le document sous le nom MyDoc. Ensuite, nous fermons le document à l’aide de la fonction Fermer. Enfin, nous libérons le presse-papiers pour être utilisé par d’autres.

J’espère que cet article sur la procédure de copie des données d’un classeur vers différentes feuilles dans Microsoft Excel 2010 est explicatif. Trouvez plus d’articles sur le calcul des valeurs et des formules Excel associées ici. Si vous avez aimé nos blogs, partagez-les avec vos amis sur Facebook. Et vous pouvez également nous suivre sur Twitter et Facebook. Nous serions ravis de vous entendre, faites-nous savoir comment nous pouvons améliorer, compléter ou innover notre travail et le rendre meilleur pour vous. Écrivez-nous à [email protected].

Articles liés:

lien: / general-topics-in-vba-vba-variables-in-excel [Variables VBA dans Excel]: VBA signifie Visual Basic pour Applications.

C’est un langage de programmation de Microsoft. Il est utilisé avec les applications Microsoft Office telles que MSExcel, MS-Word et MS-Access, tandis que les variables VBA sont des mots-clés spécifiques.

lien: / general-topics-in-vba-excel-vba-variable-scope [Excel VBA Variable Scope]: Dans tous les langages de programmation, nous avons des spécificateurs d’accès aux variables qui définissent d’où une variable définie peut être accédée. Excel VBA ne fait pas exception. VBA a également des spécificateurs de portée.

link: / cells-ranges-rows-and-columns-in-vba-what-is-the-difference-between-byref-and-byval-arguments-vba-interview-question [ByRef and ByVal Arguments]: Quand un argument est passé en tant qu’argument ByRef à un autre sous ou fonction, la référence de la variable réelle est envoyée. Toutes les modifications apportées à la copie de la variable seront reflétées dans l’argument d’origine.

link: / files-workbook-and-worksheets-in-vba-add-and-save-new-workbook-using-vba-in-microsoft-excel [Ajouter et enregistrer un nouveau classeur en utilisant VBA dans Microsoft Excel 2016]: Dans ce code, nous avons d’abord créé une référence à un objet de classeur. L’avantage de cette approche est que vous pouvez effectuer facilement des opérations sur ce nouveau classeur.

Comme enregistrer, fermer, supprimer, etc.

Articles populaires:

link: / tips-if-condition-in-excel [Comment utiliser la fonction IF dans Excel]: L’instruction IF dans Excel vérifie la condition et renvoie une valeur spécifique si la condition est TRUE ou renvoie une autre valeur spécifique si FALSE .

link: / formulas-and-functions-introduction-of-vlookup-function [Comment utiliser la fonction RECHERCHEV dans Excel]: C’est l’une des fonctions les plus utilisées et les plus populaires d’Excel qui est utilisée pour rechercher des valeurs dans différentes plages et feuilles.

lien: / excel-formule-et-fonction-excel-sumif-function [Comment utiliser la fonction SUMIF dans Excel]: Ceci est une autre fonction essentielle du tableau de bord. Cela vous aide à résumer les valeurs sur des conditions spécifiques.

link: / tips-countif-in-microsoft-excel [Comment utiliser la fonction COUNTIF dans Excel]: Comptez les valeurs avec des conditions en utilisant cette fonction étonnante. Vous n’avez pas besoin de filtrer vos données pour compter des valeurs spécifiques. La fonction Countif est indispensable pour préparer votre tableau de bord.