PDA

View Full Version : سوال: VB.Net2008



احمدرضاغلامی
شنبه 19 فروردین 1391, 19:00 عصر
:متفکر:باعرض سلام خدمت دوستان
با استفاده از چه دستوراتی در VB.Net می توان یک فایل اکسل جدید را برای قرار دادن داده درون سلول های آن باز و در نهایت ذخیره کرد.
اگر دستورات دیگری که بتوان عملیات حرفه ای تری نیز مانند چارت و... انجام داد را ارایه بدهید سپاسگذار می شود.
با تشکر

viper2009
یک شنبه 20 فروردین 1391, 04:49 صبح
ببین این بکارت میاد؟

http://www.codeproject.com/Articles/32437/Read-and-Write-Excel-Files

ضمناً در تالار برنامه نویس دراین مورد خیلی بحث شده ها، مخصوصاً ورد که شبیه هم کار میشه، جستجو کن

hakim22
یک شنبه 20 فروردین 1391, 09:28 صبح
شما اول باید یک reference به اکسل به برنامه اضافه کنی .
از قسمت add reference به قسمت com رفته و Microsoft Excel 12 object library برای اکسل 2007 رو انتخاب می کنید.

کد زیر پرونده ی جاری در اکسل رو نشون میده :

Sub showExcelDocument()
Dim myExcelApp As New Microsoft.Office.Interop.Excel.Application
'myExcelApp = CreateObject("Excel.application")
myExcelApp = GetObject(, "Excel.application")

'myExcelApp.ActiveCell.Value = "Salam"

MsgBox(myExcelApp.ActiveWorkbook.Name)
End Sub


برای اتصال به اکسل باز از GetObject و برای باز کردن نسخه ی جدیدی از اکسل از CreateObject استفاده میشه
اگه به زیر شاخه های myExcelApp نگاه کنید لیست کاملی از نرم افزار اکسل مشاهده میکنید. که همه ی قابلیتهاشو قابل دسترسی میکنه.

برای آشنایی با تکنیکهای کد نویسی از راهنمای Excel کمک بگیرید.
کد زیر برای VBA چارت رسم میکنه

Set co = Sheets("Sheet1").ChartObjects.Add(50, 40, 200, 100)
co.Chart.ChartWizard Source:=Worksheets("Sheet1").Range("A1:B2"), _
Gallery:=xlColumn, Format:=6, PlotBy:=xlColumns, _
CategoryLabels:=1, SeriesLabels:=0, HasLegend:=1

vahidpur
یک شنبه 20 فروردین 1391, 14:48 عصر
vb.net code


Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
If ctlTxtSheetName.Text.Trim = "" Then
MsgBox("نام شيت وارد نشده است !!!")
ctlTxtSheetName.Focus()
Exit Sub
End If
Try
FileBrowserDialog.InitialDirectory = Environment.SpecialFolder.Desktop
Dim okdi As New System.Windows.Forms.DialogResult
okdi = FileBrowserDialog.ShowDialog()
System.Windows.Forms.Application.DoEvents()
If okdi = System.Windows.Forms.DialogResult.OK Then
ctltxtPath.Text = FileBrowserDialog.FileName
Dim strPath As String
strPath = FileBrowserDialog.FileName
Dim myDataset As New DataSet()
Dim strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strPath & ";Extended Properties=Excel 8.0;"
Dim sheetName As String = "[" + ctlTxtSheetName.Text + "$]"
Dim myData As New OleDb.OleDbDataAdapter("SELECT * FROM " & sheetName & " ", strConn)
myData.TableMappings.Add("Table", "ExcelTest")
myData.Fill(myDataset)
Dim dt As DataTable = myDataset.Tables.Item(0)
CtlDgExelFile.DataSource = Nothing
CtlDgExelFile.DataSource = dt
Dim i As Integer
For i = 0 To CtlDgExelFile.Columns.Count - 1
CtlDgExelFile.Columns(i).HeaderText = CtlDgExelFile.Columns(i).HeaderText + " (" + CtlDgExelFile.Columns(i).Index.ToString + " )"
Next
End If
Catch ex As Exception
MsgBox("اشكال در خواندن فايل !!!" + ex.Message.ToString)
End Try
End Sub