Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : transformer un datagrid en un document pdf [ Divers / General ] (beet2che)

dimanche 12 octobre 2008 à 10:52:26 | transformer un datagrid en un document pdf

beet2che

Bonjour
en fait je voulais savoir comment transformer un datagrid en document pdf
merci
cordialement

dimanche 12 octobre 2008 à 15:50:01 | Re : transformer un datagrid en un document pdf
dimanche 12 octobre 2008 à 18:20:27 | Re : transformer un datagrid en un document pdf

beet2che

oui pourquoi ça m'arrange
merci

dimanche 12 octobre 2008 à 18:29:41 | Re : transformer un datagrid en un document pdf

gillardg


' * Le code permet d'exporter le contenu d'une datagrdiview vers un fichier excel

'**

Imports

Microsoft.VisualBasic

Imports

System

Imports

System.Collections.Generic

Imports

System.ComponentModel

Imports

System.Data

Imports

System.Text

Imports

System.Windows.Forms

Imports

System.Reflection

'''

<summary>

''' Dim ex As New ExportXls.now

''' ex.Export(datagv)

''' ex = Nothing

'''

</summary>

'''

<remarks></remarks>

Public

Class now

 

Private oXL As Microsoft.Office.Interop.Excel.Application

Private oWB As Microsoft.Office.Interop.Excel._Workbook

Private oSheet As Microsoft.Office.Interop.Excel._Worksheet

Private oRng As Microsoft.Office.Interop.Excel.Range

Private M As Object = System.Reflection.Missing.Value

#

Region "Enregistrer le fichier Excel sous"

Public Sub SaveAs( ByVal sNameFichier As String )

Try

oWB.SaveAs(sNameFichier, M, M, M, M, M, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlShared, M, M, M, M, M)

Catch e As Exception

MessageBox.Show(e.Message)

End Try

End Sub

#

End Region

Public Function Export( ByRef dtgv As DataGridView)

Dim z As Int32 = 1

Dim f As New Form

f.Width = 200

f.Height = 50

f.FormBorderStyle = FormBorderStyle.None

Dim pgb As New ProgressBar

pgb.Parent = f

pgb.Dock = DockStyle.Fill

pgb.Style = ProgressBarStyle.Marquee

f.Show()

pgb.Value = pgb.Value + z

Dim savefd1 As New SaveFileDialog

With savefd1

.AddExtension =

True

.DefaultExt =

".xlsx"

.CheckPathExists =

True

.DereferenceLinks =

True

.Filter =

"Excell 2007(*.xlsx)|*.xlsx"

.OverwritePrompt =

True

.ShowHelp =

True

.SupportMultiDottedExtensions =

True

.Title =

"Save as Excell 2007 file"

.ValidateNames =

True

End With

Try

'Start Excel and get Application object.

oXL =

New Microsoft.Office.Interop.Excel.Application()

oXL.Visible =

False

pgb.Value = pgb.Value + z

'Get a new workbook.

oWB =

CType (oXL.Workbooks.Add(System.Reflection.Missing.Value), Microsoft.Office.Interop.Excel._Workbook)

oSheet =

CType (oWB.ActiveSheet, Microsoft.Office.Interop.Excel._Worksheet)

pgb.Value = pgb.Value + z

' Copier les noms des colonnes

Dim i As Integer = 0

For Each ch As DataGridViewColumn In dtgv.Columns

oRng = oSheet.Range(Convert.ToChar(65 + i).ToString() &

"1" , Missing.Value)

oSheet.Cells(1, i + 1) = ch.Name.Trim()

oRng.Interior.ColorIndex = Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic

oRng.Font.Bold =

True

oRng.BorderAround(Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous, Microsoft.Office.Interop.Excel.XlBorderWeight.xlThin, Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic, Missing.Value)

oRng.EntireColumn.AutoFit()

pgb.Value = pgb.Value + z

i += 1

Next ch

' Copier toutes les cellules du datagridview

' j=2 on commence à la 2eme ligne dans le fichier excel

Dim j As Integer = 2

For Each uneLigne As DataGridViewRow In dtgv.Rows

pgb.Value = pgb.Value + z

i = 1

' si i=1 alors 65-1+1 donne 65<=>A et ainsi on aura la lettre de la colonne puis on juxtapose le numero de la ligne

For Each uneColonne As DataGridViewColumn In dtgv.Columns

oRng = oSheet.Range(Convert.ToChar(65 + i - 1).ToString() & j.ToString(), Missing.Value)

oSheet.Cells(j, i) = uneLigne.Cells(uneColonne.Name).Value.ToString().Trim()

oRng.BorderAround(Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous, Microsoft.Office.Interop.Excel.XlBorderWeight.xlThin, Microsoft.Office.Interop.Excel.XlColorIndex.xlColorIndexAutomatic, Missing.Value)

oRng.EntireColumn.AutoFit()

i += 1

Application.DoEvents()

Next uneColonne

oSheet.Columns.AutoFit()

j += 1

Application.DoEvents()

Next uneLigne

Catch

End Try

f.Dispose()

If savefd1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then

Try

SaveAs(savefd1.FileName)

Catch

MessageBox.Show(

"erreur" )

End Try

End If

oXL.Quit()

Return True

End Function

End

Class

'''

<summary>

''' voila

''' </summary>

''' <param name="datagv"></param>

''' <remarks></remarks>

Sub test( ByVal datagv As DataGridView)

Dim ex As New now

ex.Export(datagv)

ex =

Nothing

End Sub



Cette discussion est classé dans : datagrid, transformer, document, pdf


Répondre à ce message

Sujets en rapport avec ce message

piloter un module de conversion de document .doc en .pdf [ par Thrakkazz2000 ] Je recherche un moyen de convertir des documents Word en .doc en document .pdf.Comment faire en utilisant une appli VB et non pas un service on line ? Générer a la volée un document pdf ? [ par sehn ] Je vais devoir créer, à partir de données d'une base sql, des documents pdf dans de mon application VB.Est-ce que quelqun peut me mettre sur la voie? Ouvrir un document PDF sous Access97 [ par oliv76n ] Bonjour,Je develope sous VBA et je dois ouvrir différent document donc des document PDF, est ce que quelqu'un sais comment je peux faire car je trouve Renvoyer le nombre de pages d'un document adobe au format pdf [ par pdfign ] Je voudrais savoir comment connaître le nombre de pages d'un document adobe acrobat au format pdf et le renvoyer comme résultat dans une cellule excel imprimer plusieurs états dans un seul document pdf [ par chmouette ] Bonjour, j'ai créé une application Access avec plusieurs états que je désire imprimer en pdf, seulement, quand j'imprime mes états, un fichier '.pdf' remplissage d'un document PDF [ par jakjoud ] Salut tout le monde,j'essai de faire la gestion d'une base de données via VB, Or je dois produire un rapport (facture à envoyé) que je dois remplir av Ecrire dans un pdf existant [ par djdiabolik ] Bonjour. J'aimerais écrire dans un document pdf qui est un modèle CERFA (un peu comme un document légal que vous pouvez télécharger et imprimer sur le Word, Visio et PDF [ par montlo02 ] Bonjour à tous. Je voulais savoir si quelqu'un sait s'il est possible d'insérer dans un document Word un document Visio en utilisant l'objet suivant Extraction d'un PDF [ par mortha ] Bonjour Quelqu'un aurais une idée comment extracté les information contenu dans un document PDF et l'envoyé dans un textbox ou un document text par v affichage pdf [ par justty ] Salut,je dois afficher un fichier pdf dans une form, j'ai des questions si une personne a des réponses svp?- en regardant dans les sources, on utilise


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Appels d'offres

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,499 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.