我真的被困在这上面了。我之前使用过数字字符串格式,但没有使用datagridview。每次我尝试从datagridview格式化数字到“0.000”字符串时它什么都不做,只返回未格式化的单元格中的数字。任何人都可以帮忙纠正这个吗?
For Each manualprocess In ManualAddOperationsdgv.Rows
If manualprocess.cells(2).value.ToString = "DRILL" Then
If lasttool <> manualprocess.cells(4).value.ToString Or lastoffset <> manualprocessoffset Or lastdepth <> manualprocess.cells(10).value Then
If Not lasttool = 0 Then
builder.AppendLine("M9M5M1")
End If
builder.AppendLine("")
builder.AppendLine("N" & blocknumber & "(" & manualprocess.cells(1).value.ToString & " - DRILL OPERATION)")
blocknumber += 1
builder.AppendLine("G65P7000T" & manualprocess.cells(4).value.ToString & "M6B#.S" & manualprocess.cells(12).value.ToString & "CC#." & manualprocessoffset & "(D#)")
builder.AppendLine("G66P7015E" & manualprocess.cells(3).value.ToString & "R.1Q" & manualprocess.cells(14).value.ToString & "Z-" & manualprocess.cells(10).value.ToString("0.0000") & "S" & manualprocess.cells(12).value.ToString & "F" & manualprocess.cells(13).value.ToString("0.0000") & manualprocessoffset)
End If
builder.AppendLine("X" & manualprocess.cells(8).value.ToString("0.000") & "Y" & manualprocess.cells(9).value.ToString("0.000"))
End If
Next
答案 0 :(得分:0)
ToString函数不知道单元格中的对象类型,因此请尝试将值转换为小数或双倍:
Dim decValue As Decimal
If Decimal.TryParse(manualprocess.Cells(8).Value.ToString, decValue) Then
builder.AppendLine("X" & decValue.ToString("0.000") ...
End If