I';我正在尝试在VB.Net中读取excel表格并写入文本框。但当列数小于12时,它不起作用
如果我的excel工作表包含的列少于12列,则显示“不能将空值分配给字符串”的错误。当列数超过12时,它可以正常工作。帮我解决这个问题删除空行 # VB 删除空白列 # VBI';我正在尝试在VB.Net中读取excel表格并写入文本框。但当列数小于12时,它不起作用,vb.net,excel,vba,Vb.net,Excel,Vba,如果我的excel工作表包含的列少于12列,则显示“不能将空值分配给字符串”的错误。当列数超过12时,它可以正常工作。帮我解决这个问题删除空行 # VB 删除空白列 # VB 有关更多详细信息,请参见链接尝试删除excel工作表中的空列意味着选择所有空列并将其删除,可能存在一些被视为空的空列。可能会有帮助..不太确定你的程序是做什么的,但猜测它与这一行有关k=k+1+(13-b)wow现在就可以了。。。。。我已经删除了空列,然后它就可以正常工作了…有没有其他方法可以在不删除列但只删除值的情况下使
有关更多详细信息,请参见链接尝试删除excel工作表中的空列意味着选择所有空列并将其删除,可能存在一些被视为空的空列。可能会有帮助..不太确定你的程序是做什么的,但猜测它与这一行有关
k=k+1+(13-b)
wow现在就可以了。。。。。我已经删除了空列,然后它就可以正常工作了…有没有其他方法可以在不删除列但只删除值的情况下使其正确。。。谢谢你@Siddiquemahsud请参见链接
Dim L As Long
L = w.Worksheets.Count
Dim F As Integer = 1
For F = 1 To L
' Get sheet.
Dim sheet As Worksheet = w.Sheets(F)
' Get range.
Dim r As Range = sheet.UsedRange
' Load all cells into 2d array.
Dim array(,) As Object = r.Value(XlRangeValueDataType.xlRangeValueDefault)
' Scan the cells.
If array IsNot Nothing Then
Console.WriteLine("Length: {0}", array.Length)
' Get bounds of the array.
Dim bound0 As Integer = array.GetUpperBound(0)
Dim bound1 As Integer = array.GetUpperBound(1)
Dim row As Integer = bound0
Dim clmn As Integer = bound1
Dim table As New System.Data.DataTable
For col As Integer = 1 To bound1
table.Columns.Add()
Next
' Loop over all elements.
For j As Integer = 1 To bound0
Dim dr As DataRow = table.NewRow()
For x As Integer = 1 To bound1
Dim s1 As String = array(j, x)
dr(x - 1) = array(j, x)
'Console.Write(s1)
'Console.Write(” “c)
Next
'Console.WriteLine()
table.Rows.Add(dr)
Next
' tb1.Text = table.Rows(0)(0)
'Me.Controls("tb" & CStr(1)).Text = table.Rows(0)(0)
Dim Form1 As New Form1
Form1.A2T2.Text = table.Rows(2)(2)
' Form1.Controls("A" & CStr(1) & "T" & CStr(1)).Text = table.Rows(1)(1)
Dim tbox() As System.Windows.Forms.TextBox = {Form1.T1, Form1.T2, Form1.T3, Form1.T4, Form1.T5, Form1.T6, Form1.T7, Form1.T8, Form1.T9, Form1.T10, Form1.T11, Form1.T12, Form1.T13, Form1.T14,
Form1.A1T1, Form1.A1T2, Form1.A1T3, Form1.A1T4, Form1.A1T5, Form1.A1T6, Form1.A1T7, Form1.A1T8, Form1.A1T9, Form1.A1T10, Form1.A1T11, Form1.A1T12, Form1.A1T13, Form1.A1T14,
Form1.A2T1, Form1.A2T2, Form1.A2T3, Form1.A2T4, Form1.A2T5, Form1.A2T6, Form1.A2T7, Form1.A2T8, Form1.A2T9, Form1.A2T10, Form1.A2T11, Form1.A2T12, Form1.A2T13, Form1.A2T14,
Form1.A3T1, Form1.A3T2, Form1.A3T3, Form1.A3T4, Form1.A3T5, Form1.A3T6, Form1.A3T7, Form1.A3T8, Form1.A3T9, Form1.A3T10, Form1.A3T11, Form1.A3T12, Form1.A3T13, Form1.A3T14,
Form1.A4T1, Form1.A4T2, Form1.A4T3, Form1.A4T4, Form1.A4T5, Form1.A4T6, Form1.A4T7, Form1.A4T8, Form1.A4T9, Form1.A4T10, Form1.A4T11, Form1.A4T12, Form1.A4T13, Form1.A4T14,
Form1.A5T1, Form1.A5T2, Form1.A5T3, Form1.A5T4, Form1.A5T5, Form1.A5T6, Form1.A5T7, Form1.A5T8, Form1.A5T9, Form1.A5T10, Form1.A5T11, Form1.A5T12, Form1.A5T13, Form1.A5T14,
Form1.A6T1, Form1.A6T2, Form1.A6T3, Form1.A6T4, Form1.A6T5, Form1.A6T6, Form1.A6T7, Form1.A6T8, Form1.A6T9, Form1.A6T10, Form1.A6T11, Form1.A6T12, Form1.A6T13, Form1.A6T14,
Form1.A7T1, Form1.A7T2, Form1.A7T3, Form1.A7T4, Form1.A7T5, Form1.A7T6, Form1.A7T7, Form1.A7T8, Form1.A7T9, Form1.A7T10, Form1.A7T11, Form1.A7T12, Form1.A7T13, Form1.A7T14,
Form1.A8T1, Form1.A8T2, Form1.A8T3, Form1.A8T4, Form1.A8T5, Form1.A8T6, Form1.A8T7, Form1.A8T8, Form1.A8T9, Form1.A8T10, Form1.A8T11, Form1.A8T12, Form1.A8T13, Form1.A8T14,
Form1.A9T1, Form1.A9T2, Form1.A9T3, Form1.A9T4, Form1.A9T5, Form1.A9T6, Form1.A9T7, Form1.A9T8, Form1.A9T9, Form1.A9T10, Form1.A9T11, Form1.A9T12, Form1.A9T13, Form1.A9T14,
Form1.A10T1, Form1.A10T2, Form1.A10T3, Form1.A10T4, Form1.A10T5, Form1.A10T6, Form1.A10T7, Form1.A10T8, Form1.A10T9, Form1.A10T10, Form1.A10T11, Form1.A10T12, Form1.A10T13, Form1.A10T14}
Dim k As Integer = 0
For a = 2 To row -1
For b = 1 To clmn -1
tbox(k).Text = table.Rows(a)(b)
' Form1.A1T1.Text = table.Rows(1)(2)
If (b = clmn - 1) Then
k = k + 1 + (13 - b)
End If
k = k + 1
Next
Next
Form1.Fm.Text = table.Rows(0)(0)
Rw = row - 3
Clm = clmn - 2
Form1.Rw = Rw
Form1.Clm = Clm
Form1.Show()
End If
Next
Worksheet sheet = sheets[0];
sheet.Cells.DeleteBlankRows();
Dim sheet As Worksheet = sheets(0)
sheet.Cells.DeleteBlankRows()
Worksheet sheet = sheets[0];
sheet.Cells.DeleteBlankColumns();
Dim sheet As Worksheet = sheets(0)
sheet.Cells.DeleteBlankColumns()