123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454 |
- Option Strict Off
- Imports System.Data.SqlClient
- Imports System.IO
- Imports Microsoft.Office.Interop.Excel.XlUnderlineStyle
- Imports Microsoft.Office.Interop.Excel.Constants
- Imports Microsoft.Office.Interop.Excel.XlBordersIndex
- Imports Microsoft.Office.Interop.Excel.XlLineStyle
- Imports Microsoft.Office.Interop.Excel.XlBorderWeight
- Imports Microsoft.Office.Interop.Excel.XlThemeFont
- Imports Microsoft.Office.Interop.Excel.XlThemeColor
- Imports Microsoft.Office.Interop.Excel.XlWindowState
- Imports Microsoft.Office.Interop.Excel
- Public Class 營運成本收支單一覽表
- ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet : ReadOnly ds2 As New DataSet
- Dim DTP As String : Dim N1 As Integer : Dim N2 As Integer
- Dim xlApp As Application
- Dim xlBook As Workbook
- Dim xlSheet As Worksheet
- Private Sub Set_清單1()
- 單據彙總_dgv.DataSource = Nothing : ds1.Clear()
- 單據彙總_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
- 單據彙總_dgv.ColumnHeadersHeight = 25
- 單據彙總_dgv.AllowUserToAddRows = False
- SQL_營運成本收支單一覽表_查詢清單() : da.Fill(ds1) : 單據彙總_dgv.DataSource = ds1.Tables(0) : conn.Close()
-
- 單據彙總_dgv.Columns(0).FillWeight = 160 : 單據彙總_dgv.Columns(1).Visible = False : 單據彙總_dgv.Columns(2).FillWeight = 100 : 單據彙總_dgv.Columns(3).Visible = False
- 單據彙總_dgv.Columns(4).FillWeight = 100 : 單據彙總_dgv.Columns(5).Visible = False : 單據彙總_dgv.Columns(6).Visible = False
- End Sub
- Private Sub Set_清單2()
- 財務彙總_dgv.DataSource = Nothing : ds2.Clear()
- 財務彙總_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
- 財務彙總_dgv.ColumnHeadersHeight = 25
- 財務彙總_dgv.AllowUserToAddRows = False
- SQL_營運成本收支單一覽表_查詢清單2() : da.Fill(ds2) : 財務彙總_dgv.DataSource = ds2.Tables(0) : conn.Close()
-
- 財務彙總_dgv.Columns(0).FillWeight = 100 : 財務彙總_dgv.Columns(1).FillWeight = 140 : 財務彙總_dgv.Columns(2).FillWeight = 140 : 財務彙總_dgv.Columns(3).FillWeight = 140
- 財務彙總_dgv.Columns(4).FillWeight = 100 : 財務彙總_dgv.Columns(5).FillWeight = 100 : 財務彙總_dgv.Columns(6).FillWeight = 100 : 財務彙總_dgv.Columns(7).FillWeight = 100
- 財務彙總_dgv.Columns(8).FillWeight = 100 : 財務彙總_dgv.Columns(9).FillWeight = 100
- 財務彙總_dgv.Columns(6).DefaultCellStyle.Format = "#,##0.00" : 財務彙總_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.00" : 財務彙總_dgv.Columns(4).DefaultCellStyle.Format = "#,##0.00"
- 財務彙總_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.00"
- 財務彙總_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 財務彙總_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- 財務彙總_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 財務彙總_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- 財務彙總_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 財務彙總_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- 財務彙總_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 財務彙總_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- 財務彙總_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 財務彙總_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 財務彙總_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 財務彙總_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
-
- 財務彙總_dgv.Columns(0).ReadOnly = True : 財務彙總_dgv.Columns(1).ReadOnly = True : 財務彙總_dgv.Columns(2).ReadOnly = True : 財務彙總_dgv.Columns(3).ReadOnly = True
- 財務彙總_dgv.Columns(4).ReadOnly = True : 財務彙總_dgv.Columns(5).ReadOnly = True : 財務彙總_dgv.Columns(6).ReadOnly = True : 財務彙總_dgv.Columns(7).ReadOnly = True
- End Sub
- Private Sub Set_費用清單()
- 明細_dgv.DataSource = Nothing : ds.Clear()
- 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
- 明細_dgv.ColumnHeadersHeight = 25
- 明細_dgv.AllowUserToAddRows = False
- 明細_dgv.RowTemplate.Height = 35
- SQL_營運成本收支單一覽表_查詢費用清單() : da.Fill(ds) : 明細_dgv.DataSource = ds.Tables(0) : conn.Close()
-
- 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 80 : 明細_dgv.Columns(2).FillWeight = 300 : 明細_dgv.Columns(3).FillWeight = 500
- 明細_dgv.Columns(4).FillWeight = 140 : 明細_dgv.Columns(5).FillWeight = 140 : 明細_dgv.Columns(6).FillWeight = 140 : 明細_dgv.Columns(7).FillWeight = 140
- 明細_dgv.Columns(8).FillWeight = 140 : 明細_dgv.Columns(9).FillWeight = 140 : 明細_dgv.Columns(10).FillWeight = 140 : 明細_dgv.Columns(11).Visible = False
- 明細_dgv.Columns(12).Visible = False
-
- 明細_dgv.Columns(1).ReadOnly = True : 明細_dgv.Columns(2).ReadOnly = True : 明細_dgv.Columns(9).ReadOnly = True : 明細_dgv.Columns(10).ReadOnly = True
-
- 明細_dgv.Columns(4).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(6).DefaultCellStyle.Format = "#,##0.00"
- 明細_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.00"
- 明細_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- 明細_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- 明細_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- 明細_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- 明細_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(10).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
-
- 台幣現金_tb.Text = "0.00" : 台幣支出_tb.Text = "0.00" : 台幣現金餘額_tb.Text = "0.00" : 台幣零用金_tb.Text = "0.00" : 台幣支票_tb.Text = "0.00"
- 人民幣零用金_tb.Text = "0.00" : 人民幣支票_tb.Text = "0.00" : 人民幣現金_tb.Text = "0.00" : 人民幣支出_tb.Text = "0.00" : 人民幣現金餘額_tb.Text = "0.00"
- For i As Integer = 0 To 明細_dgv.Rows.Count - 1
- If 明細_dgv.Rows(i).Cells("幣別").Value = "台幣現金" Then
- 台幣現金_tb.Text = Val(台幣現金_tb.Text) + 明細_dgv.Rows(i).Cells("現金").Value
- 台幣支出_tb.Text = Val(台幣支出_tb.Text) + 明細_dgv.Rows(i).Cells("支出").Value
- 台幣零用金_tb.Text = Val(台幣零用金_tb.Text) + 明細_dgv.Rows(i).Cells("零用金").Value
- 台幣支票_tb.Text = Val(台幣支票_tb.Text) + 明細_dgv.Rows(i).Cells("支票").Value
- End If
- If 明細_dgv.Rows(i).Cells("幣別").Value = "人民幣現金" Then
- 人民幣現金_tb.Text = Val(人民幣現金_tb.Text) + 明細_dgv.Rows(i).Cells("現金").Value
- 人民幣支出_tb.Text = Val(人民幣支出_tb.Text) + 明細_dgv.Rows(i).Cells("支出").Value
-
- 人民幣零用金_tb.Text = Val(人民幣零用金_tb.Text) + 明細_dgv.Rows(i).Cells("零用金").Value
- 人民幣支票_tb.Text = Val(人民幣支票_tb.Text) + 明細_dgv.Rows(i).Cells("支票").Value
- End If
- Next i
- 台幣現金餘額_tb.Text = Val(台幣零用金_tb.Text) + Val(台幣現金_tb.Text) - Val(台幣支出_tb.Text) : 人民幣現金餘額_tb.Text = Val(人民幣零用金_tb.Text) + Val(人民幣現金_tb.Text) - Val(人民幣支出_tb.Text)
- If Val(台幣現金餘額_tb.Text) > 0 Then : 台幣現金餘額_tb.ForeColor = Color.Blue : Else : 台幣現金餘額_tb.ForeColor = Color.Red : End If
- If Val(人民幣現金餘額_tb.Text) > 0 Then : 人民幣現金餘額_tb.ForeColor = Color.Blue : Else : 台幣現金餘額_tb.ForeColor = Color.Red : End If
- 台幣現金_tb.Text = Strings.Format(Val(台幣現金_tb.Text), "#,##0.00") : 台幣支出_tb.Text = Strings.Format(Val(台幣支出_tb.Text), "#,##0.00") : 台幣現金餘額_tb.Text = Strings.Format(Val(台幣現金餘額_tb.Text), "#,##0.00")
- 台幣零用金_tb.Text = Strings.Format(Val(台幣零用金_tb.Text), "#,##0.00") : 台幣支票_tb.Text = Strings.Format(Val(台幣支票_tb.Text), "#,##0.00")
- 人民幣零用金_tb.Text = Strings.Format(Val(人民幣零用金_tb.Text), "#,##0.00") : 人民幣支票_tb.Text = Strings.Format(Val(人民幣支票_tb.Text), "#,##0.00") : 人民幣現金_tb.Text = Strings.Format(Val(人民幣現金_tb.Text), "#,##0.00")
- 人民幣支出_tb.Text = Strings.Format(Val(人民幣支出_tb.Text), "#,##0.00") : 人民幣現金餘額_tb.Text = Strings.Format(Val(人民幣現金餘額_tb.Text), "#,##0.00")
- End Sub
- Private Sub 日期格式()
- If 會計月_ch.Checked = True Then
- '-------------日期一----------------------------------------------------------------------------------------
- DTP = Strings.Left(Strings.Format(開始日期_dtp.Value, "yyyy/MM/dd"), 8) & "01" : 開始日期_dtp.Value = DTP
- 開始日期_dtp.Value = 開始日期_dtp.Value.AddMonths(-1)
- DTP = Strings.Left(Strings.Format(開始日期_dtp.Value, "yyyy/MM/dd"), 8) & "26" : 開始日期_dtp.Value = DTP
- '-------------日期二----------------------------------------------------------------------------------------
- DTP = Strings.Left(Strings.Format(結束日期_dtp.Value, "yyyy/MM/dd"), 8) & "25" : 結束日期_dtp.Value = DTP
- Else
- '-------------日期一----------------------------------------------------------------------------------------
- 開始日期_dtp.Value = 開始日期_dtp.Value.AddMonths(1)
- DTP = Strings.Left(Strings.Format(開始日期_dtp.Value, "yyyy/MM/dd"), 8) & "01" : 開始日期_dtp.Value = DTP
- '-------------日期二----------------------------------------------------------------------------------------
- DTP = Strings.Left(Strings.Format(結束日期_dtp.Value, "yyyy/MM/dd"), 8) & "01" : 結束日期_dtp.Value = DTP
- 結束日期_dtp.Value = 結束日期_dtp.Value.AddMonths(1) : 結束日期_dtp.Value = 結束日期_dtp.Value.AddDays(-1)
- End If
- End Sub
- Private Sub 營運成本收支單一覽表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- Me.MdiParent = YD_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
- DTP = Strings.Left(Strings.Format(Today(), "yyyy/MM/dd"), 8) & "01"
- 開始日期_dtp.Value = DTP : 結束日期_dtp.Value = Today()
- 日期格式() : 財務彙總_dgv.Visible = False : 明細_rb.Checked = True
- End Sub
- Private Sub DataGridView4_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 單據彙總_dgv.CellClick
- If e.RowIndex = -1 Then : Else
- 收支單號_tb.Text = 單據彙總_dgv(0, e.RowIndex).Value.ToString : 驗證碼_tb.Text = 單據彙總_dgv(6, e.RowIndex).Value.ToString
- 申請人_tb.Text = 單據彙總_dgv(1, e.RowIndex).Value.ToString : 申請日期_dtp.Value = 單據彙總_dgv(2, e.RowIndex).Value.ToString
- 審核人_tb.Text = 單據彙總_dgv(3, e.RowIndex).Value.ToString : 審核日期_dtp.Value = 單據彙總_dgv(4, e.RowIndex).Value.ToString
- 圖片編碼_tb.Text = 單據彙總_dgv(5, e.RowIndex).Value.ToString
- Set_費用清單()
- End If
- End Sub
- Private Sub 財務彙總_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 財務彙總_dgv.RowPostPaint
- Dim linePen As New Pen(Color.Blue, 2) : Dim linePen1 As New Pen(Color.Red, 2) : Dim linePen2 As New Pen(Color.Green, 2)
- If e.RowIndex = 財務彙總_dgv.Rows.Count - 1 Then
- Exit Sub
- Else
- If 財務彙總_dgv(0, e.RowIndex).Value.ToString <> 財務彙總_dgv(0, e.RowIndex + 1).Value.ToString Then
- Dim startX As Integer = IIf(財務彙總_dgv.RowHeadersVisible, 財務彙總_dgv.RowHeadersWidth, 0)
- Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
- Dim endX As Integer = startX + 財務彙總_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 財務彙總_dgv.HorizontalScrollingOffset
- e.Graphics.DrawLine(linePen, startX, startY, endX, startY)
- Exit Sub
- End If
- If 財務彙總_dgv(8, e.RowIndex).Value.ToString <> 財務彙總_dgv(8, e.RowIndex + 1).Value.ToString Then
- Dim startX As Integer = IIf(財務彙總_dgv.RowHeadersVisible, 財務彙總_dgv.RowHeadersWidth, 0)
- Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
- Dim endX As Integer = startX + 財務彙總_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 財務彙總_dgv.HorizontalScrollingOffset
- e.Graphics.DrawLine(linePen2, startX, startY, endX, startY)
- Exit Sub
- End If
- If 財務彙總_dgv(1, e.RowIndex).Value.ToString <> 財務彙總_dgv(1, e.RowIndex + 1).Value.ToString Then
- Dim startX As Integer = IIf(財務彙總_dgv.RowHeadersVisible, 財務彙總_dgv.RowHeadersWidth, 0)
- Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
- Dim endX As Integer = startX + 財務彙總_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 財務彙總_dgv.HorizontalScrollingOffset
- e.Graphics.DrawLine(linePen1, startX, startY, endX, startY)
- Exit Sub
- End If
- End If
- End Sub
- Private Sub Button3_Click(sender As Object, e As EventArgs) Handles 當日_bt.Click
- DTP = Strings.Format(Today(), "yyyy/MM/dd")
- 開始日期_dtp.Value = DTP : 結束日期_dtp.Value = DTP
- End Sub
- Private Sub Button1_Click(sender As Object, e As EventArgs) Handles 當月_bt.Click
- DTP = Strings.Left(Strings.Format(Today(), "yyyy/MM/dd"), 8) & "01"
- 開始日期_dtp.Value = DTP : 結束日期_dtp.Value = Today()
- End Sub
- Private Sub 彙總計算()
- If 明細_rb.Checked = False And 彙總_rb.Checked = True Then
- 台幣現金_tb.Text = "0.00" : 台幣支出_tb.Text = "0.00" : 台幣現金餘額_tb.Text = "0.00" : 台幣零用金_tb.Text = "0.00" : 台幣支票_tb.Text = "0.00"
- 人民幣零用金_tb.Text = "0.00" : 人民幣支票_tb.Text = "0.00" : 人民幣現金_tb.Text = "0.00" : 人民幣支出_tb.Text = "0.00" : 人民幣現金餘額_tb.Text = "0.00"
- For i As Integer = 0 To 財務彙總_dgv.Rows.Count - 1
- If 財務彙總_dgv.Rows(i).Cells("幣別").Value = "台幣現金" Then
- 台幣現金_tb.Text = Val(台幣現金_tb.Text) + 財務彙總_dgv.Rows(i).Cells("現金").Value
- 台幣支出_tb.Text = Val(台幣支出_tb.Text) + 財務彙總_dgv.Rows(i).Cells("支出").Value
- 台幣零用金_tb.Text = Val(台幣零用金_tb.Text) + 財務彙總_dgv.Rows(i).Cells("零用金").Value
- 台幣支票_tb.Text = Val(台幣支票_tb.Text) + 財務彙總_dgv.Rows(i).Cells("支票").Value
- End If
- If 財務彙總_dgv.Rows(i).Cells("幣別").Value = "人民幣現金" Then
- If 財務彙總_dgv.Rows(i).Cells("主項").Value <> "上月結存" Then
- 人民幣現金_tb.Text = Val(人民幣現金_tb.Text) + 財務彙總_dgv.Rows(i).Cells("現金").Value
- 人民幣支出_tb.Text = Val(人民幣支出_tb.Text) + 財務彙總_dgv.Rows(i).Cells("支出").Value
- 人民幣零用金_tb.Text = Val(人民幣零用金_tb.Text) + 財務彙總_dgv.Rows(i).Cells("零用金").Value
- 人民幣支票_tb.Text = Val(人民幣支票_tb.Text) + 財務彙總_dgv.Rows(i).Cells("支票").Value
- End If
- End If
- Next i
- 台幣現金餘額_tb.Text = Val(台幣零用金_tb.Text) + Val(台幣現金_tb.Text) - Val(台幣支出_tb.Text) : 人民幣現金餘額_tb.Text = Val(人民幣零用金_tb.Text) + Val(人民幣現金_tb.Text) - Val(人民幣支出_tb.Text)
- If Val(台幣現金餘額_tb.Text) > 0 Then : 台幣現金餘額_tb.ForeColor = Color.Blue : Else : 台幣現金餘額_tb.ForeColor = Color.Red : End If
- If Val(人民幣現金餘額_tb.Text) > 0 Then : 人民幣現金餘額_tb.ForeColor = Color.Blue : Else : 台幣現金餘額_tb.ForeColor = Color.Red : End If
- 台幣現金_tb.Text = Strings.Format(Val(台幣現金_tb.Text), "#,##0.00") : 台幣支出_tb.Text = Strings.Format(Val(台幣支出_tb.Text), "#,##0.00") : 台幣現金餘額_tb.Text = Strings.Format(Val(台幣現金餘額_tb.Text), "#,##0.00")
- 台幣零用金_tb.Text = Strings.Format(Val(台幣零用金_tb.Text), "#,##0.00") : 台幣支票_tb.Text = Strings.Format(Val(台幣支票_tb.Text), "#,##0.00")
- 人民幣零用金_tb.Text = Strings.Format(Val(人民幣零用金_tb.Text), "#,##0.00") : 人民幣支票_tb.Text = Strings.Format(Val(人民幣支票_tb.Text), "#,##0.00") : 人民幣現金_tb.Text = Strings.Format(Val(人民幣現金_tb.Text), "#,##0.00")
- 人民幣支出_tb.Text = Strings.Format(Val(人民幣支出_tb.Text), "#,##0.00") : 人民幣現金餘額_tb.Text = Strings.Format(Val(人民幣現金餘額_tb.Text), "#,##0.00")
- End If
- End Sub
- Private Sub 上個月_bt_Click(sender As Object, e As EventArgs) Handles 上個月_bt.Click
- If 會計月_ch.Checked = True Then
- 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
- 開始日期_dtp.Value = 中間日期_dtp.Value
- 結束日期_dtp.Value = 中間日期_dtp.Value
- Else
- 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
- 開始日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
- 結束日期_dtp.Value = 中間日期_dtp.Value
- End If
- 日期格式()
- End Sub
- Private Sub 下個月_bt_Click(sender As Object, e As EventArgs) Handles 下個月_bt.Click
- If 會計月_ch.Checked = True Then
- 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(1)
- 開始日期_dtp.Value = 中間日期_dtp.Value
- 結束日期_dtp.Value = 中間日期_dtp.Value
- Else
- 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(1)
- 開始日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
- 結束日期_dtp.Value = 中間日期_dtp.Value
- End If
- 日期格式()
- End Sub
- Private Sub DateTimePicker4_ValueChanged(sender As Object, e As EventArgs) Handles 開始日期_dtp.ValueChanged
- Set_清單1() : Set_清單2() : 彙總計算()
- End Sub
- Private Sub DateTimePicker3_ValueChanged(sender As Object, e As EventArgs) Handles 結束日期_dtp.ValueChanged
- Set_清單1() : Set_清單2() : 彙總計算()
- End Sub
- Private Sub 會計月_CheckedChanged(sender As Object, e As EventArgs) Handles 會計月_ch.Click
- 會計月_ch.Checked = True : 一般月_ch.Checked = False : 日期格式()
- End Sub
- Private Sub 一般月_CheckedChanged(sender As Object, e As EventArgs) Handles 一般月_ch.Click
- 會計月_ch.Checked = False : 一般月_ch.Checked = True : 日期格式()
- End Sub
- Private Sub RadioButton1_CheckedChanged(sender As Object, e As EventArgs) Handles 明細_rb.Click
- 明細_dgv.Visible = True : 財務彙總_dgv.Visible = False : 明細_rb.Checked = True : 彙總_rb.Checked = False
- 台幣現金_tb.Text = "0.00" : 台幣支出_tb.Text = "0.00" : 台幣現金餘額_tb.Text = "0.00" : 台幣零用金_tb.Text = "0.00" : 台幣支票_tb.Text = "0.00" : 單據彙總_dgv.Enabled = True
- End Sub
- Private Sub RadioButton2_CheckedChanged(sender As Object, e As EventArgs) Handles 彙總_rb.Click
- 明細_dgv.Visible = False : 財務彙總_dgv.Visible = True : 明細_rb.Checked = False : 彙總_rb.Checked = True
- 收支單號_tb.Text = "" : 申請人_tb.Text = "" : 審核人_tb.Text = "" : 明細_dgv.DataSource = Nothing : ds.Clear() : 單據彙總_dgv.Enabled = False
- 彙總計算()
- End Sub
- Private Sub TextBox14_TextChanged(sender As Object, e As EventArgs) Handles 圖片編碼_tb.TextChanged
- SQL_營運成本收支單一覽表_查詢簽名檔圖片()
- While dr.Read() = True
- Dim unused As Byte() = New Byte(-1) {}
- Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte())
- Dim oStream As New MemoryStream(bytes)
- 簽名圖_pb.Image = Bitmap.FromStream(oStream)
- End While
- conn.Close()
- 簽名圖_pb.SizeMode = 4
- End Sub
- Private Sub Button2_Click(sender As Object, e As EventArgs) Handles 支付單列印成EXCEL.Click
- xlApp = CType(CreateObject("Excel.Application"), Application)
- xlBook = xlApp.Workbooks.Add
- xlApp.DisplayAlerts = True
- xlBook.Activate()
- xlSheet = NewMethod(xlBook)
- xlSheet.Activate()
- xlApp.Visible = True
- xlApp.Application.WindowState = xlMaximized
-
- xlSheet.Cells(1, 1) = "年度" : xlSheet.Cells(1, 2) = Year(Today) - 1911
- If 明細_rb.Checked = True And 彙總_rb.Checked = False Then
- xlSheet.Cells(1, 3) = "雅邸家居-營運費用收支明細表"
- xlSheet.Cells(2, 1) = "收款日期" : xlSheet.Cells(2, 2) = "會計科目" : xlSheet.Cells(2, 3) = "客戶或用途"
- xlSheet.Cells(2, 4) = "零用金" : xlSheet.Cells(2, 5) = "支票" : xlSheet.Cells(2, 6) = "現金" : xlSheet.Cells(2, 7) = "支出" : xlSheet.Cells(2, 8) = "現金餘額" : xlSheet.Cells(2, 9) = "票期"
-
- For i As Integer = 0 To 明細_dgv.Rows.Count - 1
- xlSheet.Cells(i + 3, 1) = 申請日期_dtp.Value : xlSheet.Cells(i + 3, 2) = 明細_dgv.Rows(i).Cells("會計科目").Value
- xlSheet.Cells(i + 3, 3) = 明細_dgv.Rows(i).Cells("用途").Value : xlSheet.Cells(i + 3, 4) = 明細_dgv.Rows(i).Cells("零用金").Value
- xlSheet.Cells(i + 3, 5) = 明細_dgv.Rows(i).Cells("支票").Value : xlSheet.Cells(i + 3, 6) = 明細_dgv.Rows(i).Cells("現金").Value
- xlSheet.Cells(i + 3, 7) = 明細_dgv.Rows(i).Cells("支出").Value : xlSheet.Cells(i + 3, 9) = 明細_dgv.Rows(i).Cells("票期").Value
- If i = 0 Then
- xlSheet.Cells(i + 3, 8) = "=D3+F3-G3"
- Else
- xlSheet.Cells(i + 3, 8) = "=H" & i + 2 & "+D" & i + 3 & "+F" & i + 3 & "-G" & i + 3 & ""
- End If
- With xlApp.Selection
- .Font.Bold = True
- End With
- N1 = i + 3 : N2 = i + 3
- Next i
- xlSheet.Cells(N1 + 1, 3) = "以下空白" : xlSheet.Cells(N1 + 3, 1) = "簽核(點交)" : xlSheet.Cells(N1 + 3, 7) = "製表 : " & 申請人_tb.Text & " - " & 申請日期_dtp.Value
- xlSheet.Cells(N1 + 2, 4) = "=SUM(D3:D" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 5) = "=SUM(E3:E" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 6) = "=SUM(F3:F" & N1 + 1 & ")"
- xlSheet.Cells(N1 + 2, 7) = "=SUM(G3:G" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 8) = "=H" & N1 : xlSheet.Cells(N1 + 2, 1) = "合計"
-
- AA(xlApp, xlSheet) : BB(xlApp, xlSheet)
- ElseIf 明細_rb.Checked = False And 彙總_rb.Checked = True Then
- xlSheet.Cells(1, 3) = "雅邸家居-營運費用收支彙總簡表"
- xlSheet.Cells(2, 1) = "日期" : xlSheet.Cells(2, 2) = "主項" : xlSheet.Cells(2, 3) = "子項" : xlSheet.Cells(2, 4) = "子細項" : xlSheet.Cells(2, 5) = "零用金"
- xlSheet.Cells(2, 6) = "支票" : xlSheet.Cells(2, 7) = "現金" : xlSheet.Cells(2, 8) = "支出" : xlSheet.Cells(2, 9) = "現金餘額"
-
- For i As Integer = 0 To 財務彙總_dgv.Rows.Count - 1
- xlSheet.Cells(i + 3, 1) = 財務彙總_dgv.Rows(i).Cells("日期").Value
- xlSheet.Cells(i + 3, 2) = 財務彙總_dgv.Rows(i).Cells("主項").Value
- xlSheet.Cells(i + 3, 3) = 財務彙總_dgv.Rows(i).Cells("子項").Value
- xlSheet.Cells(i + 3, 4) = 財務彙總_dgv.Rows(i).Cells("子細項").Value
- xlSheet.Cells(i + 3, 5) = 財務彙總_dgv.Rows(i).Cells("零用金").Value
- xlSheet.Cells(i + 3, 6) = 財務彙總_dgv.Rows(i).Cells("支票").Value
- xlSheet.Cells(i + 3, 7) = 財務彙總_dgv.Rows(i).Cells("現金").Value
- xlSheet.Cells(i + 3, 8) = 財務彙總_dgv.Rows(i).Cells("支出").Value
- If i = 0 Then
- xlSheet.Cells(i + 3, 9) = "=E3+G3-H3"
- Else
- xlSheet.Cells(i + 3, 9) = "=I" & i + 2 & "+E" & i + 3 & "+G" & i + 3 & "-H" & i + 3 & ""
- End If
- With xlApp.Selection
- .Font.Bold = True
- End With
- N1 = i + 3 : N2 = i + 3
- Next i
- xlSheet.Cells(N1 + 1, 2) = "以下空白" : xlSheet.Cells(N1 + 3, 1) = "簽核" : xlSheet.Cells(N1 + 3, 5) = "製表 : " & gUserName & " - " & Today()
- xlSheet.Cells(N1 + 2, 5) = "=SUM(E3:E" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 6) = "=SUM(F3:F" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 7) = "=SUM(G3:G" & N1 + 1 & ")"
- xlSheet.Cells(N1 + 2, 8) = "=SUM(H3:H" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 9) = "=I" & N1 : xlSheet.Cells(N1 + 2, 1) = "合計"
-
- CC(xlApp, xlSheet)
- End If
-
- xlSheet.PageSetup.PrintArea = ""
- xlApp.Cells.Select()
- xlSheet.Range("B1").Select()
- xlApp.Application.WindowState = xlMinimized
- xlSheet.Cells.Select()
- xlApp.ActiveSheet.Protect(DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="0911274990")
- xlApp.ActiveSheet.EnableSelection = 1
- MsgBox("列印完成。")
- End Sub
- Private Shared Function NewMethod(xlBook As Workbook) As Worksheet
- Return CType(xlBook.Worksheets.Add, Worksheet)
- End Function
- Private Sub AA(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
- xlSheet.Cells.Select()
- With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 10 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
- .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
- End With
-
- xlSheet.Columns("A:A").Select : myExcel.Selection.NumberFormatLocal = "m/d;@"
- With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
- .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
- End With
-
- xlSheet.Range("B1").Select()
- With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
- .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
- End With
-
- xlSheet.Columns("B:B").Select : myExcel.Selection.ColumnWidth = 25
- xlSheet.Columns("C:C").Select : myExcel.Selection.ColumnWidth = 30
- xlSheet.Columns("D:H").Select : myExcel.Selection.ColumnWidth = 10 : myExcel.Selection.NumberFormatLocal = "#,##0;[紅色]-#,##0"
- xlSheet.Columns("I:I").Select : myExcel.Selection.ColumnWidth = 10 : myExcel.Selection.NumberFormatLocal = "[$-zh-TW]e/m/d;@"
- xlSheet.Rows("2:2").Select : myExcel.Selection.RowHeight = 25
-
- xlSheet.Range("A2:I2").Select()
- With myExcel.Selection : .HorizontalAlignment = xlGeneral : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
- .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
- End With
- With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
- .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
- End With
-
- xlSheet.Range("A2:I" & N1 + 2).Select() : myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
- With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- myExcel.ActiveWindow.DisplayGridlines = False
-
- xlSheet.Rows("3:" & N1 + 2).Select : myExcel.Selection.RowHeight = 20
- xlSheet.Rows(N1 + 3 & ":" & N1 + 3).Select : myExcel.Selection.RowHeight = 40
-
- xlSheet.Columns("I:I").Select
- With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
- .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
- End With
-
- xlSheet.Range("A" & N1 + 2 & ":C" & N1 + 2).Select() : myExcel.Selection.Merge
- With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
- .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True
- End With
-
- xlSheet.Rows("1:1").Select : myExcel.Selection.RowHeight = 25
- With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 14 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
- .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
- End With
- End Sub
- Private Sub BB(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
- Clipboard.SetDataObject(簽名圖_pb.Image)
- xlSheet.Range("B" & N2 + 3).Select()
- myExcel.ActiveSheet.Pictures.Paste.Select
- myExcel.Selection.ShapeRange.Height = 43
- myExcel.Selection.ShapeRange.IncrementTop(3)
- End Sub
- Private Sub CC(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
- xlSheet.Cells.Select()
- With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 10 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
- .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
- End With
-
- xlSheet.Columns("A:A").Select : myExcel.Selection.ColumnWidth = 8
- xlSheet.Columns("B:C").Select : myExcel.Selection.ColumnWidth = 15
- xlSheet.Columns("D:D").Select : myExcel.Selection.ColumnWidth = 20
- xlSheet.Columns("E:I").Select : myExcel.Selection.ColumnWidth = 10 : myExcel.Selection.NumberFormatLocal = "#,##0.00;[紅色]-#,##0.00"
- xlSheet.Rows("1:1").Select : myExcel.Selection.RowHeight = 25
- xlSheet.Rows("2:2").Select : myExcel.Selection.RowHeight = 25
- xlSheet.Rows("3:" & N1 + 2).Select : myExcel.Selection.RowHeight = 20
- xlSheet.Rows(N1 + 3 & ":" & N1 + 3).Select : myExcel.Selection.RowHeight = 40
-
- xlSheet.Rows("2:2").Select
- With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
- .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
- End With
-
- xlSheet.Range("A1").Select()
- With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
- .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
- End With
-
- xlSheet.Range("B1").Select()
- With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
- .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
- End With
-
- xlSheet.Rows("1:1").Select
- With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 16 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
- .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
- End With
-
- xlSheet.Range("A2:I" & N1 + 2).Select() : myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
- With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
- With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
-
- xlSheet.Range("A" & N1 + 2 & ":D" & N1 + 2).Select() : myExcel.Selection.Merge
- With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
- .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True
- End With
-
- xlSheet.Columns("E:I").Select : myExcel.Selection.NumberFormatLocal = "#,##0.00;[紅色]-#,##0.00"
- myExcel.ActiveWindow.DisplayGridlines = False
- End Sub
-
- '----------------------滑鼠右鍵--------------------------------------------------------------------------------------------------------------------------------------------------------------------
- Private Sub 重新讀取ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 重新讀取ToolStripMenuItem.Click
- Set_清單1() : Set_清單2() : 彙總計算()
- End Sub
- End Class
|