ASP importe des données (images) vers Excel. La version finale d'ASP exploite Excel. Les amis dans le besoin peuvent s'y référer. Je pense que de nombreuses personnes ont besoin d'utiliser des programmes pour importer des données dans Excel, et l'ont fait. Généralement, il est très pratique d'exporter certaines données texte. Il existe de nombreuses méthodes facultatives, telles que l'épissage de chaînes de texte et leur enregistrement dans . format cvs (séparant les données par des virgules et des retours chariot), ouvert avec Excel par défaut), par exemple, traiter le fichier xls comme des données et utiliser SQL pour le faire fonctionner, etc. Que dois-je faire lorsque j'ai besoin d'exporter des données d'image ? Cela nécessite l'utilisation de l'objet Excel.Application.
En fait, en utilisant Excel.Application, vous pouvez effectuer toutes les opérations que le logiciel OfficeExcel peut effectuer, et la fonction est assez puissante. Cependant, chacun de nous a une énergie d'apprentissage limitée et il est impossible pour tout le monde de la connaître. , j'ai choisi beaucoup de mots clés sur Baidu et Google, dans l'espoir d'obtenir quelque chose de valeur. Mais après la recherche, je n'ai pas trouvé de version complète. La plupart d'entre eux étaient des demandes de renseignements et le code contenait de nombreuses erreurs évidentes. déficiences fonctionnelles. Il convient de critiquer le fait qu'un grand nombre de sites copient directement des articles provenant d'autres sites. Et c'est quand même un article de mauvaise qualité. Hé, ne le cherchez pas ! Comme dit le proverbe, si je ne vais pas en enfer, qui ira en enfer, alors j'ai fait ce travail pour tout le monde.
J'ai d'abord trouvé une collection de manuels VBA, et heureusement, c'était au format chm. J'y ai ouvert le Vbaexcelxl10.chm, et bon, ce n'est pas mal, c'est effectivement un bon manuel, mais ce n'est pas un tutoriel, et j'ai l'impression que pleurer... Je n'y peux rien. , je n'avais pas d'autre choix que de continuer à lire. Après tout, le manuel est un manuel, et il ne mentionnera pas en détail certaines opérations pratiques, ni n'expliquera la connexion logique de chacune. partie du contenu complètement. Après mon analyse minutieuse et mes prédictions audacieuses, Une réflexion approfondie, beaucoup d'expériences, en haut de la montagne de couteaux, en bas de la marmite, non, la mer de feu, j'y suis finalement parvenu parfaitement. Maintenant, je l'ai téléchargé sur Web630.Net du jour au lendemain, j'espère juste que tout le monde le fera. souvenez-vous de ce site, et j'espère que chaque site technologique publiera des articles plus originaux et contribuera au développement de l'industrie de la programmation chinoise.
Copiez le code comme suit :
<%
Rem initialise l'environnement de travail d'ExcelApplication
Dim ExcelApp, eBook, eSheet
Set ExcelApp = CreateObject(Excel.Application) 'Créer un objet Excel
ExcelApp.DisplayAlerts=false 'Ne pas afficher les avertissements
ExcelApp.Application.Visible=false 'Ne pas afficher l'interface
Rem initialise les données Excel
'ExcelApp.Workbooks.Open(Server.MapPath(zzz.xls)) 'Ouvrez le classeur Excel et remplacez la ligne suivante
Set eBook=ExcelApp.Workbooks.Add 'Créer un nouveau classeur Excel
Set eBook=ExcelApp.Workbooks(1) 'Référence au premier classeur
set eSheet = eBook.Worksheets(1) 'Référence à la première feuille de calcul
Importation de données Rem
Dim je, img
je = 1
Pour i=1 à 5
eSheet.Cells(i,1).Value=Champ un&i
eSheet.Cells(i,2).Value=Champ 2&i
eSheet.Cells(i,3).Value=Champ trois&i
eSheet.Cells(i,4).Select 'Sélectionnez la 4ème cellule de la ligne i
Set img=eSheet.Pictures.Insert(Server.MapPath(people.jpg)) 'Insérez une image à l'emplacement ci-dessus et obtenez une référence à l'image
img.Top=img.Top+2 'Ajustez la position de l'image, de même ci-dessous, sinon elle appuiera sur le bord du tableau
img.Left=img.Left+2 'L'unité est en livres
eSheet.Rows(i).RowHeight=img.Height+4 'Ajuste la hauteur de la ligne actuelle pour qu'elle soit automatiquement la même que la hauteur de l'image
Suivant
Rem enregistre le travail effectué ci-dessus
'eBook.Save 'Si vous ouvrez un fichier Excel existant, vous pouvez utiliser cette ligne pour remplacer la ligne suivante
eBook.SaveAs Server.MapPath(zzz.xls)
Définir eSheet = Rien
Définir eBook=Rien
« ExcelApp.Quit » doit être quitté, sinon le processus Excel restera dans le système d'exploitation.
définir ExcelApp = Rien
%>
Lorsque ASP lit ou écrit des données dans Excel, une méthode plus simple consiste à traiter Excel comme une base de données et à utiliser des instructions SQL pour le faire fonctionner. Il existe des articles connexes dans de nombreux endroits sur Internet. Cet article est uniquement intitulé "ASP importe des données dans Excel (). photo)" Les informations auxiliaires de "The Final Edition" sont pour votre référence.
Copiez le code comme suit :
<%
Dim conn,rs,sql
SousDBOpen()
Dim db : db=Server.MapPath(zzz.xls)
Définir conn=Server.CreateObject(Adodb.Connection)
En cas d'erreur, reprendre ensuite
conn.Open Provider=Microsoft.Jet.OLEDB.4.0;Propriétés étendues=Excel 8.0;HDR=OUI;Source de données= & db
Rem HDR est par défaut OUI, ce qui signifie que la première ligne est utilisée comme nom de champ, sinon elle est considérée comme le contenu
Rem pour Excel2007, il devrait s'agir de : Provider=Microsoft.ACE.OLEDB.12.0 ; Extended Properties=Excel 12.0 ;Data Source=xxx.xlsx ;
Si Err.Number<>0 alors
Err.Effacer
Response.Write(<h1>Le lien vers la base de données est ERREUR</h1>)
Réponse.Fin()
Fin si
En cas d'erreur, GoTo 0
Fin du sous-marin
SubDBClose()
Si IsNotBlank(conn) Alors
conn.Close()
Définir conn=Rien
Fin si
Fin du sous-marin
Fonction IsNotBlank (ByRef TempVar)
EstBlank=Vrai
Sélectionnez le type de variable de cas (TempVar)
Cas 0,1 'Vide et nul
EstBlank = Faux
Cas 9 'Objet
Si TypeName(TempVar) = Rien ou TypeName(TempVar) = Vide Alors
EstBlank = Faux
Fin si
Fin de la sélection
Fonction de fin
AppelerDBOpen()
sql=SELECT * FROM [Sheet1$] 'Faites attention à l'écriture du nom de la table. Vous devez ajouter le symbole $ après le nom de la feuille de calcul.
Définir rs=conn.Execute(sql)
Bien que ce ne soit pas rs.Eof
Réponse.Write(rs(0)&, )
Réponse.Write(rs(1)&, )
Réponse.Write(rs(2)&<br />&VbCrLf)
rs.Movenext
Wende
rs.Close : Définir rs=Rien
AppelDBClose()
%>