fremdrechnungen, etc.

This commit is contained in:
2025-04-03 15:37:12 +02:00
parent a0a21e0c48
commit 32883956d5
8 changed files with 268 additions and 103 deletions

View File

@@ -1330,7 +1330,7 @@ Public Class cProgramFunctions
MsgBox("Excel konnte nicht gestartet werden!" & vbNewLine & vbNewLine & ex.Message)
End Try
End Sub
Public Shared Function dgridViewTods(ByVal dgv As DataGridView, Optional replaceZeroDate As Boolean = False) As DataTable
Public Shared Function dgridViewTods(ByVal dgv As DataGridView, Optional replaceZeroDate As Boolean = False, Optional onlySelectedRows As Boolean = False) As DataTable
Dim dt As New DataTable
Try
' Add Table
@@ -1338,27 +1338,54 @@ Public Class cProgramFunctions
' Add Columns
Dim col As DataColumn
For Each dgvCol As DataGridViewColumn In dgv.Columns
col = New DataColumn(dgvCol.Name)
dt.Columns.Add(col)
Next
col = New DataColumn(dgvCol.Name)
dt.Columns.Add(col)
Next
'Add Rows from the datagridview
Dim row As DataRow
Dim colcount As Integer = dgv.Columns.Count - 1
For i As Integer = 0 To dgv.Rows.Count - 1
row = dt.Rows.Add
For Each column As DataGridViewColumn In dgv.Columns
Dim valueTmp As Object = dgv.Rows.Item(i).Cells(column.Index).Value
If valueTmp Is DBNull.Value Then
row.Item(column.Index) = ""
Else
If replaceZeroDate AndAlso valueTmp IsNot Nothing AndAlso Not IsNumeric(valueTmp) Then valueTmp = valueTmp.ToString.Replace(" 00:00:00", "")
row.Item(column.Index) = valueTmp
End If
If onlySelectedRows Then
For i As Integer = 0 To dgv.SelectedRows.Count - 1
row = dt.Rows.Add
For Each column As DataGridViewColumn In dgv.Columns
Dim valueTmp As Object = dgv.SelectedRows.Item(i).Cells(column.Index).Value
If valueTmp Is DBNull.Value Then
row.Item(column.Index) = ""
Else
If replaceZeroDate AndAlso valueTmp IsNot Nothing AndAlso Not IsNumeric(valueTmp) Then valueTmp = valueTmp.ToString.Replace(" 00:00:00", "")
row.Item(column.Index) = valueTmp
End If
Next
Next
Next
Else
For i As Integer = 0 To dgv.Rows.Count - 1
row = dt.Rows.Add
For Each column As DataGridViewColumn In dgv.Columns
Dim valueTmp As Object = dgv.Rows.Item(i).Cells(column.Index).Value
If valueTmp Is DBNull.Value Then
row.Item(column.Index) = ""
Else
If replaceZeroDate AndAlso valueTmp IsNot Nothing AndAlso Not IsNumeric(valueTmp) Then valueTmp = valueTmp.ToString.Replace(" 00:00:00", "")
row.Item(column.Index) = valueTmp
End If
Next
Next
End If
Return dt