نمایش نتایج 1 تا 8 از 8

نام تاپیک: سلام مشکل در کار با دیتاست و دیتاتیبل بعد از اولین استفاده درخروجی اکسل(خالی نشدن دیتاست ودیتاتیبل)

  1. #1

    سلام مشکل در کار با دیتاست و دیتاتیبل بعد از اولین استفاده درخروجی اکسل(خالی نشدن دیتاست ودیتاتیبل)

    سلام من از کد زیر برای خروجی فایل اکسل استفاده می کنم و همه چیز درسته فقط مشکل اینجاست که وقتی یه رکورد جدید ثبت می کنم یا ویرایش می کنم و مجددا فایل اکسل می گیریم هموم اطلاعات قلبی رو بهم نشون میده. کمک کنید دیگه خسته شدم هر چی گشتم به نتیجه نمی رسم.
    کد خروجی فایل اکسل


    Dim exeleapp As Microsoft.Office.Interop.Excel.Application = New Microsoft.Office.Interop.Excel.Application()
    Dim exelbook As Microsoft.Office.Interop.Excel.Workbook = exeleapp.Workbooks.Add(XlSheetType.xlWorksheet)
    Dim exelworksheet As Microsoft.Office.Interop.Excel.Worksheet = CType((exelbook.Worksheets(1)), Worksheet)
    exelworksheet.DisplayRightToLeft = True




    Dim clmncnt As Integer = My.Forms.Form_listsarb.DataGridkhedmat.Columns.Cou nt
    Dim rng() As Range = New Range(clmncnt) {}


    Dim x As Integer
    For x = 0 To clmncnt - 1 Step x + 1
    Dim celladress As String = Convert.ToString(Convert.ToChar(Convert.ToByte(x + 65))) + "1"


    rng(x) = exelworksheet.Range(celladress, celladress)
    rng(x).Value2 = My.Forms.Form_listsarb.DataGridkhedmat.Columns(x). HeaderText


    exelworksheet.UsedRange.Font.Name = "b titr"
    exelworksheet.UsedRange.ColumnWidth = 20
    Next


    Dim j As Integer = 2


    For Each r As DataRow In DataSet1.Tables(0).Rows
    Dim k As Integer
    For k = 0 To clmncnt - 1 'Step k + 1
    Dim celladress As String = Convert.ToString(Convert.ToChar(Convert.ToByte(k + 65))) + j.ToString()
    rng(k) = exelworksheet.Range(celladress, celladress)
    rng(k).Value2 = r(k).ToString()
    exelworksheet.UsedRange.Font.Name = "b mitra"
    Next
    j = j + 1


    Next
    exeleapp.Visible = True


    این کد رو هم گذاشتم روی یه رادیوچک که باید انتخاب بشه بعد رو دکمه ای که کد های بالا رو نوشتم کلیلک کنه

    Me.sarbTableAdapter.FillBy(Me.sarbDataSet1.sarb)

  2. #2

    نقل قول: سلام مشکل در کار با دیتاست و دیتاتیبل بعد از اولین استفاده درخروجی اکسل(خالی نشدن دیتاست ود

    دوست عزیز شما نحوه ذخیره اطلاعات در دیتابیستون رو اینجا قرار ؟؟؟؟
    بنظر من 2 حالت امکان داره اول اینکه برنامه رو دارین از خود ویژوال ران میکنید که در این صورت با هر بار استارت برنامه اطلاعات دیتابیس اولیه ران میشه
    دوم اینکه شما توی نوشتن کد های ذخیره اطلاعاتتون جایی رو دارین اشتباه میرین و دیتاست دیتاهای قبلی رو مجدد میخونه

  3. #3
    کاربر دائمی
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    اصفهان
    پست
    301

    نقل قول: سلام مشکل در کار با دیتاست و دیتاتیبل بعد از اولین استفاده درخروجی اکسل(خالی نشدن دیتاست ود

    برای خروجی گرید به اکسل ازین کدها استفاده کن ببین حل میشه
     SaveFileDialog1.Filter = "*.xls|*.xls"
    SaveFileDialog1.ShowDialog()
    If SaveFileDialog1.FileName <> "" Then
    Dim oExcel As Object
    Dim oWorkBook As Object
    Dim oSheet As Object
    oExcel = CreateObject("Excel.Application")
    oWorkBook = oExcel.Workbooks.Add
    oExcel.visible = True
    Dim c, r As Integer
    Dim ColNum As Integer = Grid.ColumnCount
    Dim RowNum As Integer = Grid.RowCount
    Dim col As Integer = 65
    oSheet = oWorkBook.worksheets(1)
    For c = 1 To ColNum
    oSheet.Range(CStr(Chr(col) & 1)).Value = Grid.Columns(c - 1).HeaderText
    col += 1
    Next
    For r = 1 To RowNum
    For c = 1 To ColNum
    oSheet.Cells(r + 1, c) = Grid.Rows(r - 1).Cells(c - 1).Value
    Next
    Next
    oWorkBook.SaveAs(SaveFileDialog1.FileName, True)
    oSheet = Nothing
    oWorkBook = Nothing
    oExcel = Nothing
    End If

    شما گرید رو آپدیت کنید توی دیتابیس ذخیره کنید و بعد از گرید خروجی اکسل بگیرید

  4. #4

    نقل قول: سلام مشکل در کار با دیتاست و دیتاتیبل بعد از اولین استفاده درخروجی اکسل(خالی نشدن دیتاست ود

    نقل قول نوشته شده توسط A_1397 مشاهده تاپیک
    برای خروجی گرید به اکسل ازین کدها استفاده کن ببین حل میشه
     SaveFileDialog1.Filter = "*.xls|*.xls"
    SaveFileDialog1.ShowDialog()
    If SaveFileDialog1.FileName <> "" Then
    Dim oExcel As Object
    Dim oWorkBook As Object
    Dim oSheet As Object
    oExcel = CreateObject("Excel.Application")
    oWorkBook = oExcel.Workbooks.Add
    oExcel.visible = True
    Dim c, r As Integer
    Dim ColNum As Integer = Grid.ColumnCount
    Dim RowNum As Integer = Grid.RowCount
    Dim col As Integer = 65
    oSheet = oWorkBook.worksheets(1)
    For c = 1 To ColNum
    oSheet.Range(CStr(Chr(col) & 1)).Value = Grid.Columns(c - 1).HeaderText
    col += 1
    Next
    For r = 1 To RowNum
    For c = 1 To ColNum
    oSheet.Cells(r + 1, c) = Grid.Rows(r - 1).Cells(c - 1).Value
    Next
    Next
    oWorkBook.SaveAs(SaveFileDialog1.FileName, True)
    oSheet = Nothing
    oWorkBook = Nothing
    oExcel = Nothing
    End If

    شما گرید رو آپدیت کنید توی دیتابیس ذخیره کنید و بعد از گرید خروجی اکسل بگیرید
    تشکر درسته. فقط اگه خواسته باشم شرط بزارم باید چیکار کنم مثلا بین دو تاریخ خواستم خروجی بگیریم.

  5. #5

    نقل قول: سلام مشکل در کار با دیتاست و دیتاتیبل بعد از اولین استفاده درخروجی اکسل(خالی نشدن دیتاست ود

    نقل قول نوشته شده توسط hamidrezax1 مشاهده تاپیک
    دوست عزیز شما نحوه ذخیره اطلاعات در دیتابیستون رو اینجا قرار ؟؟؟؟
    بنظر من 2 حالت امکان داره اول اینکه برنامه رو دارین از خود ویژوال ران میکنید که در این صورت با هر بار استارت برنامه اطلاعات دیتابیس اولیه ران میشه
    دوم اینکه شما توی نوشتن کد های ذخیره اطلاعاتتون جایی رو دارین اشتباه میرین و دیتاست دیتاهای قبلی رو مجدد میخونه
    از دستورات اس کیو ال استفاده می کنم

    حذف
    Dim Rnew As New SqlCommand
    Dim StrDb As String
    connect.Open()
    StrDb = "delete from hamkar where id=" & lblid.Text & " "
    Rnew = New SqlCommand(StrDb, connect)
    Rnew.ExecuteNonQuery()
    connect.Close()
    GridViewhamkar

    ثبت
    Dim Rnew As New sqlCommand
    Dim StrDb As String
    connect.Open()
    StrDb = "insert into hamkar (name,famil) values"
    StrDb &= "(N'" & textname.Text & "' , N'" & Textfamil.Text & "')"
    Rnew = New sqlCommand(StrDb, connect)
    Rnew.ExecuteNonQuery()
    connect.Close()
    GridViewhamkar

    ویرایش
    Dim Rnew1 As New sqlCommand
    Dim StrDb1 As String
    connect.Open()
    StrDb1 = "update hamkar set name=N'" & textname.Text & "' where id like '" & lblid.Text & "' "
    Rnew1 = New sqlCommand(StrDb1, connect)
    Rnew1.ExecuteNonQuery()
    connect.Close()
    GridViewhamkar

  6. #6

    نقل قول: سلام مشکل در کار با دیتاست و دیتاتیبل بعد از اولین استفاده درخروجی اکسل(خالی نشدن دیتاست ود

    سلام دوست عزیز شما شرط رو با دیتابیستون اجرا کنید و از خروجی اون که درون گرید هست با کد دوستمون خروجی نهیه کنید

  7. #7

    نقل قول: سلام مشکل در کار با دیتاست و دیتاتیبل بعد از اولین استفاده درخروجی اکسل(خالی نشدن دیتاست ود

    نقل قول نوشته شده توسط hamidrezax1 مشاهده تاپیک
    سلام دوست عزیز شما شرط رو با دیتابیستون اجرا کنید و از خروجی اون که درون گرید هست با کد دوستمون خروجی نهیه کنید
    راه حل دیگه ای نداره؟؟؟؟؟؟؟؟؟؟؟؟
    کد هایی که خودم گذاشتم با دیتاست نمیشه هیچ کاری انجام داد؟؟؟؟؟

  8. #8

    نقل قول: سلام مشکل در کار با دیتاست و دیتاتیبل بعد از اولین استفاده درخروجی اکسل(خالی نشدن دیتاست ود

    چرا دوست عزیز میشه منتحی بایستی کدهاتون رو بیشتر کنید درون هر حلقه مینونین شرطی رو که میخواین قرار بدین.اما دستور between به نظرم رو دیتابیس خوب جواب میده

تاپیک های مشابه

  1. مبتدی: سلام یه مشکل در کار با رشته ها دارم
    نوشته شده توسط mantan در بخش برنامه نویسی اسمبلی خانواده x86
    پاسخ: 3
    آخرین پست: جمعه 09 تیر 1391, 17:22 عصر
  2. مشکل در کار با quickreport
    نوشته شده توسط شکوفه سلامی در بخش ابزارهای گزارش سازی در دلفی
    پاسخ: 5
    آخرین پست: یک شنبه 05 اسفند 1386, 03:00 صبح
  3. مشکل در کار با sql Server
    نوشته شده توسط شکوفه سلامی در بخش SQL Server
    پاسخ: 2
    آخرین پست: سه شنبه 10 شهریور 1383, 09:23 صبح
  4. مشکل در کار با ado
    نوشته شده توسط در بخش برنامه نویسی در Delphi
    پاسخ: 6
    آخرین پست: پنج شنبه 25 تیر 1383, 14:17 عصر
  5. مشکل در کار با Shell_NotifyIcon
    نوشته شده توسط در بخش برنامه نویسی در Delphi
    پاسخ: 6
    آخرین پست: چهارشنبه 24 تیر 1383, 15:56 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •