1c client léger excel remplir le tableau des valeurs. Quel est le meilleur - "1C" ou "Excel" ? Via l'application Excel

Il existe différentes manières d'ouvrir un fichier Excel en 1C et vice versa. Les utilisateurs novices préféreront plus opérations simples enregistrer le document dans un format différent ou en utilisant programmes spéciaux... Mais cela vaut la peine de faire un petit effort et d'apprendre à travailler avec des outils logiciels pour visualiser et traiter les données d'un programme à un autre. À l'avenir, ces compétences de base en programmation vous permettront d'éviter les tâches routinières.

Comment ouvrir des documents Excel dans 1C et vice versa

L'éditeur de feuilles de calcul Microsoft Excel surpasse les produits logiciels de comptabilité 1C en termes d'exhaustivité des fonctionnalités. Par conséquent, les utilisateurs 1C préfèrent effectuer une partie des opérations dans un éditeur de tableur, puis renvoyer les données au programme comptable. Et ce n'est pas surprenant, car avant, la comptabilité de nombreuses entreprises était effectuée exclusivement à l'aide de programmes Microsoft. Mais avec le niveau moderne d'automatisation des processus commerciaux des entreprises, il est impossible d'abandonner les programmes spécialisés. Pour créer une synergie entre différentes applications, il existe les moyens simples suivants :

    Quand traiter les fichiers produits logiciels qui ne sont pas installés sur votre ordinateur actuel sont les plus faciles à utiliser application spéciale pour convertir des tableaux Excel au format 1C et vice versa. Il peut être trouvé sur le site Web du produit 1C.

    Si l'ordinateur possède à la fois 1C et Excel, vous pouvez ouvrir manuellement le fichier dans son application "native", puis l'enregistrer au format d'un autre programme. Généralement, cette option est disponible lors de l'enregistrement d'un fichier imprimable ou d'une mise en page.

    Les utilisateurs de 1C 7.7 peuvent passer à la version 1C 8, qui dispose d'un éditeur de table amélioré.

Comment 1C et Excel peuvent interagir par programmation

L'interaction entre 1C et Excel peut être réalisée au niveau du programme en utilisant la technologie OLE Automation développée par Microsoft. Il vous permet d'accéder aux objets COM directement à partir des interpréteurs de scripts de différents programmes. En termes simples, OLE vous permet de transférer un travail d'un programme à un autre, puis de le renvoyer à l'application d'origine. C'est exactement ce que les comptables attendent de Microsoft Spreadsheet Editor.

Vous n'avez pas besoin d'être un programmeur pour utiliser les outils OLE. Bien que la première connaissance des lignes de code soit accompagnée d'erreurs, la vérification aidera à les identifier et l'expérience acquise aidera à les éviter à l'avenir. Vous trouverez ci-dessous les commandes les plus populaires (appelées listes) pour travailler avec des données Excel dans des programmes de comptabilité et vice versa.

Comment ouvrir un fichier Excel dans 1C par programmation

Ainsi, si les deux programmes sont installés sur votre ordinateur, entre lesquels vous souhaitez établir un échange de données, vous pouvez organiser l'interaction par programmation. Pour ce faire, vous devez lancer les deux applications, puis utiliser OLE pour établir l'accès de 1C à Excel :

  • Exception

    Rapport (DescriptionErrors () + "Excel n'est pas installé sur cet ordinateur !");

  • Fin de la tentative.

L'accès à l'éditeur de tableur est installé, maintenant, à l'aide des commandes suivantes, vous devez accéder :

    document spécifique :

    • Livre = Excel.WorkBooks.Open (Chemin du fichier)

    • Feuille = Book.WorkSheets (SheetNumber);

  • y compris avec un numéro de feuille spécifique :

    y compris avec un nom de feuille spécifique :

    • Feuille = Book.WorkSheets (SheetName);

    • Valeur = Sheet.Cells (RowNumber, ColumnNumber) .Value;

Pour lire les données de la première page d'un fichier, utilisez les listes suivantes :

    Excel = CréerObjet ("Excel.Application");

    Livre = Excel.WorkBooks.Open (chemin d'accès au fichier) ;

    Feuille = Livre.Feuilles de travail (1) ;

    Total des colonnes = Sheet.Cells (1,1) .SpecialCells (11) .Column;

    TotalRows = Sheet.Cells (1,1) .SpecialCells (11) .Row;

    Pour la ligne = 1 pour la boucle totale de lignes

    • Pour la colonne = 1 pour la boucle totale des colonnes

      Valeur = Abréviation (Feuille.Cellules (Ligne, Colonne) .Valeur);

      Fin de cycle ;

    Fin de cycle ;

N'oubliez pas d'écrire le chemin d'accès au fichier en entier. Lors de l'enregistrement, vous ne pouvez pas inclure de caractères tels que \, /,:, *,?, ",>,< и |.

Comment ouvrir un fichier 1C via Excel par programmation

Pour écrire des données dans Excel, vous devez :

    ou ouvrez un document existant :

    • Book = Excel.WorkBooks.Open (PathKFile) - par analogie avec la lecture d'un fichier Excel de 1C ;

    ou en ajouter un nouveau :

    • Classeur = Excel.WorkBooks.Add ();

    dans un nouveau document, vous pouvez créer une nouvelle feuille :

    • Feuille = Livre.Feuilles.Ajouter ();

    et ajoutez une nouvelle valeur à la cellule :

    • Sheet.Cells (LineNumber, ColumnNumber) .Value = Value; (les méthodes d'écriture des valeurs à l'aide d'OLE sont décrites en détail sur Internet).

  • Book.SaveAs (Chemin vers le fichier) ;

    Exception

    Rapport (DescriptionErrors () + "Fichier non enregistré !");

    Fin de la tentative.

Lorsque vous avez terminé avec l'éditeur de feuille de calcul, quittez à l'aide d'une commande spéciale (Excel.Application.Quit ();). Cette méthode permettra d'économiser les ressources informatiques lors de travaux ultérieurs.

Dangers de l'échange de données entre 1C et Excel

1C et Excel ont été développés par différentes sociétés et utilisent différentes manières de traiter les données. Par conséquent, lors du transfert de tables d'un programme à un autre, n'oubliez pas les pièges suivants :

    Divers séparateurs en nombres fractionnaires. Microsoft sépare les nombres décimaux par des virgules. Par conséquent, lors du transfert de tableaux à partir d'un programme comptable, ne soyez pas surpris par l'abondance de dates et autres confusions. C'est juste que dans un programme comptable, un point peut être utilisé dans l'enregistrement des fractions, que l'éditeur de feuille de calcul Microsoft interprétera comme un séparateur de date, et 15.5 deviendra le 15 mai. Pour traiter les données comptables dans un éditeur de tableur, le séparateur devra être remplacé par une virgule.

    Lors du transfert de données d'Excel vers 1C, les constantes Excel qui ne figurent pas dans le programme de comptabilité peuvent ne pas s'afficher correctement. Pour les décrypter, il faut aller dans l'Aide de l'éditeur de tableur ou en mode débogage et vérifier l'expression numérique de différentes constantes.

Si vous devez établir l'échange de grandes quantités de données ou si vous ne pouvez pas vous débarrasser des erreurs, contactez les professionnels de la société Setby pour obtenir de l'aide. Nous vous aiderons à résoudre vos problèmes au niveau du programme et traiterons avec les équipes nécessaires à votre travail.

Pendant longtemps, l'application 1C est devenue le programme le plus populaire parmi les comptables, les planificateurs, les économistes et les gestionnaires. Il a non seulement un nombre varié de configurations pour différents types activités, mais aussi localisation selon les normes comptables dans plusieurs pays du monde. De plus en plus d'entreprises passent à la comptabilité dans ce programme. Mais la procédure de transfert manuel des données d'autres programmes comptables vers 1C est une tâche assez longue et ennuyeuse qui prend beaucoup de temps. Si l'entreprise tenait des registres à l'aide d'Excel, le processus de transfert peut être considérablement automatisé et accéléré.

Il est nécessaire de transférer des données d'Excel vers 1C non seulement lors de la période initiale de travail avec ce programme. Parfois, cela est nécessaire lorsque, au cours de l'activité, vous devez saisir des listes stockées dans le livre du tableur. Par exemple, si vous souhaitez transférer des listes de prix ou des commandes depuis une boutique en ligne. Dans le cas où les listes sont petites, elles peuvent être introduites manuellement, mais que se passe-t-il si elles contiennent des centaines d'articles ? Afin d'accélérer la procédure, vous pouvez recourir à certaines fonctionnalités supplémentaires.

Presque tous les types de documents sont adaptés au chargement automatique :

  • Liste d'objets;
  • Liste des entrepreneurs ;
  • Liste de prix;
  • Liste des commandes;
  • Informations sur les achats ou les ventes, etc.

Il convient de noter tout de suite qu'il n'y a pas d'outils intégrés dans 1C qui vous permettraient de transférer des données depuis Excel. À ces fins, vous devez connecter un chargeur externe, qui est un fichier au format epf.

Préparation des données

Nous devrons préparer les données dans le tableau Excel lui-même.


En plus de ces actions universelles de préparation des données dans le livre Excel, il faudra également mettre le document en conformité avec les exigences d'un chargeur particulier que nous utiliserons, mais nous en reparlerons un peu plus bas.

Connecter un bootloader externe

Connectez le bootloader externe avec l'extension epfà l'application 1C, vous pouvez, à la fois avant de préparer le fichier Excel et après. L'essentiel est que ces deux points préparatoires soient résolus avant le début du processus de téléchargement.

Il existe plusieurs chargeurs externes pour les tableaux Excel pour 1C, qui ont été créés par divers développeurs. Nous allons considérer un exemple utilisant un outil de traitement de l'information "Charger des données à partir d'un tableur" pour la version 1C 8.3.


L'une des principales bases de données avec lesquelles 1C travaille est une liste de la nomenclature des biens et services. Par conséquent, pour décrire la procédure de chargement depuis Excel, nous allons nous concentrer sur l'exemple du transfert de ce type particulier de données.

  1. Nous revenons à la fenêtre de traitement. Puisque nous allons charger la nomenclature des marchandises, dans le paramètre le commutateur doit être sur la position "Annuaire"... Cependant, il est défini de cette façon par défaut. Vous ne devez le changer que lorsque vous allez transférer un autre type de données : partie tabulaire ou un registre d'informations. Plus loin dans le domaine « Vue du répertoire » cliquez sur le bouton avec des points de suspension. Une liste déroulante s'ouvre. Dans celui-ci, nous devons sélectionner l'élément "Nomenclature".
  2. Après cela, le gestionnaire organise automatiquement les champs que le programme utilise dans ce type de référence. Précisons tout de suite qu'il n'est pas du tout nécessaire de remplir tous les champs.
  3. Ouvrez à nouveau le document Excel portable. Si le nom de ses colonnes diffère des noms des champs du répertoire 1C, qui contiennent les correspondants, vous devez alors renommer ces colonnes dans Excel afin que les noms correspondent complètement. Si le tableau contient des colonnes pour lesquelles il n'y a pas d'analogues dans le livre de référence, alors elles doivent être supprimées. Dans notre cas, de telles colonnes sont "Quantité" et "Prix"... Il faut également ajouter que l'ordre des colonnes dans le document doit coïncider strictement avec celui présenté dans le traitement. Si vous n'avez pas de données pour certaines colonnes affichées dans le chargeur, ces colonnes peuvent être laissées vides, mais la numérotation des colonnes où les données sont disponibles doit correspondre. Pour plus de commodité et de rapidité d'édition, vous pouvez utiliser une fonction spéciale d'Excel pour déplacer rapidement des colonnes par endroits.

    Une fois ces actions effectuées, cliquez sur l'icône "Sauvegarder", qui est représenté par une icône représentant une disquette dans le coin supérieur gauche de la fenêtre. Ensuite, nous fermons le fichier en cliquant sur le bouton de fermeture standard.

  4. Nous revenons à la fenêtre de traitement 1C. Cliquez sur le bouton "Ouvert", qui s'affiche sous la forme d'un dossier jaune.
  5. La fenêtre d'ouverture de fichier démarre. Allez dans le répertoire où se trouve le document Excel dont nous avons besoin. Le commutateur d'affichage de fichier par défaut est défini pour l'extension mxl... Afin d'afficher le fichier dont nous avons besoin, il doit être réorganisé à la position "Feuille de calcul Excel"... Après cela, sélectionnez le document à transférer et cliquez sur le bouton "Ouvert".
  6. Le contenu est ensuite ouvert dans un gestionnaire. Pour vérifier l'exactitude du remplissage avec les données, cliquez sur le bouton "Contrôle du remplissage".
  7. Comme vous pouvez le voir, l'outil de contrôle de remplissage nous informe qu'aucune erreur n'a été trouvée.
  8. Passons maintenant à l'onglet "Réglage"... V "Champ de recherche" mettre une coche dans la ligne qui sera unique pour tous les articles saisis dans la liste de stock. Le plus souvent, des champs sont utilisés pour cela. "Code de fournisseur" ou "Nom"... Cela doit être fait pour que lors de l'ajout de nouvelles positions à la liste, les données ne soient pas dupliquées.
  9. Une fois toutes les données saisies et les réglages effectués, vous pouvez procéder au chargement direct des informations dans le livre de référence. Pour cela, cliquez sur l'inscription "Télécharger les données".
  10. Le processus de téléchargement est en cours. Une fois terminé, vous pouvez accéder au répertoire des éléments et vous assurer que toutes les données nécessaires y ont été ajoutées.

Nous avons retracé la procédure d'ajout de données au livre de référence de la nomenclature dans le programme 1C 8.3. Pour les autres répertoires et documents, le téléchargement s'effectuera selon le même principe, mais avec quelques nuances que l'utilisateur pourra comprendre par lui-même. Il convient également de noter que la procédure peut différer pour différents chargeurs tiers, mais l'approche générale reste la même pour tout le monde : d'abord, le gestionnaire charge les informations du fichier dans la fenêtre où il est édité, et ensuite seulement il est ajouté directement à la base de données 1C.

Cette méthode est simple. Son essence réside dans le fait que l'objet Document tabulaire a des méthodes :

  • Écrire (< ИмяФайла>, < ТипФайлаТаблицы >) pour télécharger des données dans un fichier ;
  • Lire (< ИмяФайла>, < СпособЧтенияЗначений >) pour charger les données d'un fichier.

Attention!

La méthode Write() est disponible à la fois sur le client et sur le serveur. La méthode Read() n'est disponible que côté serveur. Souviens-toi de ça
lors de la planification de l'interaction client-serveur.

Prenons un exemple d'enregistrement d'une feuille de calcul dans un fichier. Il est nécessaire de créer et de remplir l'objet TabularDocument de quelque manière que ce soit, et déchargement au fichier s'effectue avec une seule ligne :

TabDoc ... Écrire (FilePath, TabularDocumentFileType. XLSX);

Ici TabDoc- un tableur généré, Le chemin du fichier- le nom du fichier à télécharger, Type de fichier de document tabulaire.XLSX- le format du fichier en cours de création. Les formats Excel suivants sont pris en charge :

  • XLS95 - format Excel 95 ;
  • XLS97 - format Excel 97 ;
  • XLSX - format Excel 2007.

TabDoc = New TabularDocument;
TabDoc ... Lire (Chemin d'accès au fichier, Comment lire les valeurs de document tabulaires.);

Ici Le chemin du fichier- le chemin d'accès au fichier Excel téléchargé. Méthode de lecture des valeurs de documents tabulaires. détermine comment interpréter les données lues à partir du document source. Les options sont :

  • Sens;
  • Texte.

Échange sur OLE

L'échange via la technologie d'automatisation OLE est peut-être l'option la plus courante pour le travail logiciel avec Fichiers Excel... Il vous permet d'utiliser toutes les fonctionnalités fournies par Excel, mais est plus lent que les autres méthodes. Pour l'échange via OLE, vous devez installer MS Excel :

  • Sur l'ordinateur de l'utilisateur final, si l'échange a lieu côté client ;
  • Sur le 1C : Ordinateur serveur d'entreprise, si l'échange a lieu côté serveur.

Exemple déchargement:

// Créer un objet COM
Excel = Nouveau COMObject ("Excel.Application");
// Désactiver l'affichage des avertissements et des questions
Exceller ... DisplayAlerts = False ;
// Créer un nouveau livre
Livre = Exceller. Cahiers d'exercices. Ajouter ();
// Positionnement sur la première feuille
Feuille = Livre. Feuilles de travail (1) ;

// Écrire une valeur dans une cellule
Feuille ... Cellules (LineNumber, ColumnNumber). Valeur = valeur de la cellule ;

// Enregistrer le fichier
Livre ... Enregistrer sous (NomFichier) ;


Exceller ... Quitter ();
Excel = 0 ;

Exemples de en train de lire:

// -- OPTION 1 --

// Créer un objet COM
Excel = Nouveau COMObject ("Excel.Application");
// Ouvrir le livre
Livre = Exceller. Cahiers d'exercices. Ouvert ( Le chemin d'accès au fichier );

Feuille = Livre. Feuilles de travail (1) ;

// Ferme le livre
Livre ... Fermer (0) ;

// Fermez Excel et libérez de la mémoire
Exceller ... Quitter ();
Excel = 0 ;

// -- OPTION 2 --

// Ouvrir le livre
Livre = GetCOMObject ( Le chemin d'accès au fichier );
// Positionnement sur la feuille souhaitée
Feuille = Livre. Feuilles de travail (1) ;

// Lit la valeur de la cellule, généralement c'est la boucle pour parcourir les cellules
Valeur de la cellule = feuille. Cellules (LineNumber, ColumnNumber). Valeur;

// Ferme le livre
Livre ... Application. Qui t ();

Pour contourne de toutes les lignes remplies d'une feuille Excel, vous pouvez utiliser les techniques suivantes :

// -- OPTION 1 --
Nombre de lignes = feuille. Cellules (1, 1). Cellules spéciales (11). Ligne;
Pour le numéro de ligne = 1 par boucle de nombre de lignes
Valeur de la cellule = feuille. Cellules (LineNumber, ColumnNumber). Valeur;
Fin de cycle ;

// -- OPTION 2 --
Numéro de ligne = 0 ;
Tandis que le cycle de vérité
Numéro de ligne = Numéro de ligne + 1 ;
Valeur de la cellule = feuille. Cellules (LineNumber, ColumnNumber). Valeur;
Si PAS ValueFilled (Valeur de la cellule) Puis
Avorter;
Fin si;
Fin de cycle ;

Au lieu de parcourir séquentiellement toutes les lignes de la feuille, vous pouvez vider toutes les données dans un tableau et travailler avec lui. Cette approche sera plus rapide lors de la lecture de grandes quantités de données :

Total des colonnes = feuille. Cellules (1, 1). Cellules spéciales (11). Colonne;
Nombre total de lignes = Feuille. Cellules (1, 1). Cellules spéciales (11). Ligne;

Région = Feuille. Plage (Feuille. Cellules (1, 1), Feuille. Cellules (TotalLines, TotalColumns));
Données = Région. Valeur. Décharger();

Le tableau ci-dessous présente les propriétés et méthodes les plus courantes pour travailler avec Excel via OLE :

action Code Un commentaire
Travailler avec l'application
Paramétrer la visibilité de la fenêtre de l'application Exceller ... Visible= Faux ;
Réglage du mode d'affichage des avertissements (afficher / ne pas afficher) Exceller ... Afficher les alertes= Faux ;
Fermeture de l'application Exceller ... Quitter ();
Travailler avec un livre
Créer un nouveau livre Livre = Exceller. Cahiers d'exercices. Ajouter();
Ouvrir un livre existant Livre = Exceller. Cahiers d'exercices. Ouvrir (Nom de fichier);
Enregistrer un livre Livre ... Enregistrer sous (Nom de fichier);
Fermeture du livre Livre ... Fermer (0) ;
Travailler avec une feuille
Paramétrage de la feuille courante Feuille = Livre. Feuilles de travail (numéro de feuille);
Définir le nom Feuille ... Nom = Nom;
Réglage de la protection Feuille ... Protéger();
Supprimer la protection Feuille ... Déprotéger();
Définition de l'orientation de la page Feuille ... Mise en page. Orientation = 2; 1 - portrait, 2 - paysage
Réglage de la bordure gauche Feuille ... Mise en page. Marge Gauche = Excel. CentimètresVersPoints (Centimètres);
Définition de la limite supérieure Feuille ... Mise en page. TopMargin = Excel. CentimètresVersPoints (Centimètres);
Définir la bonne bordure Feuille ... Mise en page. Marge Droite = Excel. CentimètresVersPoints (Centimètres);
Définir la bordure inférieure Feuille ... Mise en page. Marge inférieure = Excel. CentimètresVersPoints (Centimètres);
Travailler avec des lignes, des colonnes, des cellules
Réglage de la largeur de colonne Feuille ... Colonnes. Largeur de colonne = largeur;
Supprimer une ligne Feuille ... Lignes. Effacer();
Suppression de colonne Feuille ... Colonnes. Effacer ();
Supprimer une cellule Feuille ... Cellules (LineNumber, ColumnNumber). Effacer();
Réglage de la valeur Feuille ... Cellules (LineNumber, ColumnNumber). Valeur = Valeur;
Fusion de cellules Feuille ... Plage (Feuille. Cellules (RowNumber, ColumnNumber), Sheet.Cells (RowNumber1 ,ColumnNumber1)). Fusionner();
Installation de la police Feuille ... Cellules (LineNumber, ColumnNumber). Police de caractère. Nom = Nom de la police;
Réglage de la taille de la police Feuille ... Cellules (LineNumber, ColumnNumber). Police de caractère. Taille = Taille de la police;
Définir la police en gras Feuille ... Cellules (LineNumber, ColumnNumber). Police de caractère. Gras = 1 ; 1 - gras, 0 - normal
Mettre en italique Feuille ... Cellules (LineNumber, ColumnNumber). Police de caractère. Italique = 1 ; 1 - italique, 0 - normal
Définir la police soulignée Feuille ... Cellules (LineNumber, ColumnNumber). Police de caractère. Souligner = 2 ; 2 - souligné, 1 - non

Pour savoir quelle propriété doit être modifiée ou quelle méthode appeler, vous pouvez utiliser macro Exceller. Si vous enregistrez une macro avec les actions requises, vous pouvez alors consulter le code de programme VBA de la macro enregistrée.

Utilisation de COMSafeArray

Lors du déchargement de grandes quantités de données de 1C vers Excel, vous pouvez utiliser l'objet pour accélérer COMSafeArray... Selon la définition de l'assistant de syntaxe, COMSafeArray est un wrapper d'objet sur tableau multidimensionnel SafeArray de COM. Vous permet de créer et d'utiliser SafeArray pour échanger des données entre des objets COM. En termes simples, il s'agit d'un tableau de valeurs qui peut être utilisé pour échanger entre les applications utilisant la technologie OLE.

// Créer un tableau COMSafe
ArrayCom = Nouveau COMSafeArray ("VT_Variant", TotalColumns, TotalStrings);
// Remplir le COMSafeArray
Pour Lignes = 0 par total de lignes - 1 cycle
Pour Nombre = 0 Total Colonnes - 1 Cycle
ArrayCom ... SetValue (nombre, page, valeur);
Fin de cycle ;
Fin de cycle ;
// Affecter une zone de feuille Valeurs Excel de COMSafeArray
Feuille ... Plage (Feuille. Cellules (1, 1), Feuille. Cellules (TotalRows, TotalColumns)). Valeur = ArrayCom;

Échange via ADO

Un fichier Excel échangé via ADO est une base de données accessible à l'aide de requêtes SQL. L'installation de MS Excel n'est pas requise, mais un pilote ODBC doit être présent, avec lequel l'accès sera effectué. Le pilote ODBC à utiliser est déterminé en spécifiant une chaîne de connexion au fichier. Généralement, le pilote requis est déjà installé sur l'ordinateur.

L'échange via ADO est sensiblement plus rapide que l'échange via OLE, mais lors du déchargement, il n'y a aucun moyen d'utiliser les fonctionnalités d'Excel pour concevoir des cellules, des pages de balisage, définir des formules, etc.

Exemple déchargement:


Connexion = Nouveau COMObject ("ADODB.Connection");


Composé ... Chaîne de connexion = "

| Source de données = " + Nom de fichier + " ;
;
Composé ... Ouvert (); // Ouvrir la connexion

// Crée un objet COM pour la commande
Commande = Nouveau COMObject ("ADODB.Command");
Commander

// Assignez le texte de la commande pour créer la table
Commander ... CommandText = "CREATE TABLE [Sheet1] (Column1 char (255), Column2 date, Column3 int, Column4 float)";
Commander ... Exécuter (); // Exécuter la commande

// Attribuer un texte de commande pour ajouter une ligne de tableau
Commander ... CommandText = "INSÉRER DANS [Feuille1] (Colonne1, Colonne2, Colonne3, Colonne4) les valeurs (' '' ' ',' 8/11/2017 '", '12345', '12345.6789') ”;
Commande.Exécuter (); // Exécuter la commande

// Supprimer la commande et fermer la connexion
Commande = Non défini ;
Composé ... proche();
Connexion = Non défini;

Pour créer une nouvelle feuille et former sa structure, vous pouvez utiliser les objets ADOX.Catalogue et Tableau.ADOX... Dans ce cas, le code prendra la forme :

// Créer un objet COM pour travailler avec le livre
Livre = Nouveau COMObject ("ADOX.Catalog");
Livre ... ActiveConnexion = Connexion ;

// Créer un objet COM pour travailler avec la structure de données sur la feuille
Table = Nouveau COMObject ("ADOX.Table");
table ... Nom = "Feuille1" ;
table ... Colonnes. Ajouter ("Colonne1", 202) ;
table ... Colonnes. Ajouter ("Colonne 2", 7);
table ... Colonnes. Ajouter ("Colonne 3", 5);
table ... Colonnes. Ajouter ("Colonne 4", 5);

// Créer une feuille avec la structure décrite dans le livre
Livre ... Les tables. Ajouter (Tableau) ;
Tableau = Non défini ;
Livre = Non défini ;

Dans l'exemple ci-dessus, dans la méthode

table ... Colonnes. Ajouter("Colonne 1", 202) ;

le deuxième paramètre spécifie le type de la colonne. Le paramètre est facultatif, voici quelques valeurs pour le type de colonne :

  • 5 - double ;
  • 6 - adCurrency ;
  • 7 - date d'ajout ;
  • 11 - adBooléen ;
  • 202 - adVarWChar;
  • 203 - adLongVarWChar.

Exemple en train de lire:

// Crée un objet COM pour la connexion
Connexion = Nouveau COMObject ("ADODB.Connection");

// Définir la chaîne de connexion
Composé ... Chaîne de connexion = "
| Fournisseur = Microsoft.ACE.OLEDB.12.0;
| Source de données = " + Nom de fichier + " ;
| Propriétés étendues = "" XML Excel 12.0 ; HDR = OUI ""; ";
Composé ... Ouvert (); // Ouvrir la connexion

// Crée un objet COM pour récupérer la sélection
Selection = New COMObject ("ADODB.Recordset");
Texte de la demande = "SELECT * FROM [Feuille1 $]";

// Exécuter la requête
Échantillon ... Ouvrir (QueryText, Connexion) ;

// Ignore le résultat de la sélection
PAS encore d'échantillonnage. Boucle EOF ()
Valeur de la colonne 1 = échantillon. Des champs. Article ("Colonne 1"). Valeur ; // Référencement par nom de colonne
Colonne2-Valeur = Échantillon. Des champs. Article (0). Valeur; // Se référant à l'index de la colonne
Échantillon ... DéplacerSuivant ();
Fin de cycle ;

Échantillon ... Proche ();
Échantillon = Non défini ;
Composé ... Proche ();
Connexion = Non défini ;

Dans la chaîne de connexion, le paramètre HDR détermine comment la première ligne de la feuille sera perçue. Les options sont :

  • OUI - la première ligne est interprétée comme les noms de colonnes. Les valeurs sont accessibles par nom et index de colonne.
  • NON - la première ligne est traitée comme une donnée. Les valeurs ne sont accessibles que par l'index de colonne.

Seuls quelques-uns des objets ADO ont été traités dans les exemples fournis. Modèle d'objet ADO se compose des entités suivantes :

  • Lien;
  • Commander;
  • Jeu d'enregistrements ;
  • Enregistrer;
  • Des champs;
  • Flux;
  • Les erreurs;
  • Paramètres;
  • Propriétés.

Télécharger sans programmation

Pour sauvegarder les données de 1C vers Excel, il n'est pas toujours conseillé de recourir à la programmation. Si en mode Entreprise l'utilisateur peut afficher les données nécessaires au téléchargement, alors il est possible de les enregistrer dans Excel sans programmation.

Pour enregistrer une feuille de calcul (par exemple, un résultat de rapport), vous pouvez appeler la commande sauvegarder ou Enregistrer sous… menu principal.

Dans la fenêtre qui s'ouvre, vous devez sélectionner le répertoire, le nom et le format du fichier enregistré.

Pour enregistrer des données listes dynamiques(par exemple, une liste d'articles), vous devez :

  1. Exporter les données dans un tableur à l'aide de la commande Plus ⇒ Afficher la liste ...;
  2. Enregistrez la feuille de calcul au format requis.

2021 wisemotors.ru. Comment ça fonctionne. Le fer. Exploitation minière. Crypto-monnaie.