重新讲一遍以下循换
For i = StartCol To EndCol
For j = StartRow To EndRow
If .GetCellInput(i, j, .GetCurSheet) = False Then
If .GetCellDataType(i, j, .GetCurSheet) = 2 Then
PDFstr1 = Trim$(.GetCellDouble(i, j, .GetCurSheet))
Else
PDFstr2 = Tstr + .GetCellString(i, j, .GetCurSheet)
End If
End If
Next
Next要求,循换后,将PDFstr1,PDFstr2的值放到一字符串中应如何写。
并且,(PDFstr1,PDFstr2两个值)有且只一个字符串输出。我头都大了
谢谢!!!!!!!!
For i = StartCol To EndCol
For j = StartRow To EndRow
If .GetCellInput(i, j, .GetCurSheet) = False Then
If .GetCellDataType(i, j, .GetCurSheet) = 2 Then
PDFstr1 = Trim$(.GetCellDouble(i, j, .GetCurSheet))
Else
PDFstr2 = Tstr + .GetCellString(i, j, .GetCurSheet)
End If
End If
Next
Next要求,循换后,将PDFstr1,PDFstr2的值放到一字符串中应如何写。
并且,(PDFstr1,PDFstr2两个值)有且只一个字符串输出。我头都大了
谢谢!!!!!!!!
If .GetCellInput(i, j, .GetCurSheet) = False Then
If .GetCellDataType(i, j, .GetCurSheet) = 2 Then
PDFstr1 = Trim$(.GetCellDouble(i, j, .GetCurSheet))
Else
PDFstr2 = Tstr + .GetCellString(i, j, .GetCurSheet)
End If
End If
Next
Next
(1)你的要求看不懂,什么是“放到一个字符串中”(是合并这两个变量为另一个字符串变量吗),什么是“有且只一个字符串输出”(这不跟前面你说的有点矛盾吗)?是不是这个意思:最后生成一个新的字符串变量sNewStr,让sNewStr等于PDFstr1或者等于PDFstr2?
(2)中间的Tstr是什么变量,用来干什么的?
(3).GetCellInput()是什么函数?为什么要让它等于False?
'************************
PDFstr1=""
PDFstr2=""
'************************
For j = StartRow To EndRow
If .GetCellInput(i, j, .GetCurSheet) = False Then
If .GetCellDataType(i, j, .GetCurSheet) = 2 Then
PDFstr1 = Trim$(.GetCellDouble(i, j, .GetCurSheet))
Else
PDFstr2 = Tstr + .GetCellString(i, j, .GetCurSheet)
End If
End If
Next
Next
'************************
str=PDFstr1+PDFstr2
'************************
循环到最后,其中肯定有一个字符串为空,一个不为空,两个加在一起不就只剩一个不为空的了
你怎么知道其中肯定有一个字符串为空呢?根据程序来看,两个字符串都有值的可能性为99%。
Dim StartRow As Long, EndRow As Long
Dim PDFstr1 As String, PDFstr2 As String
Dim i, j, k, f
Static Tstr As String
Tstr = vbNullString '清空静态变量
With Me.Cell1
.GetSelectRange StartCol, StartRow, EndCol, EndRow
' .GetCurSheet
' On Error Resume Next
For i = StartCol To EndCol
For j = StartRow To EndRow
If .GetCellInput(i, j, .GetCurSheet) = False Then
If .GetCellDataType(i, j, .GetCurSheet) = 2 Then
Debug.Print Trim$(.GetCellDouble(i, j, .GetCurSheet))
PDFstr1 = Trim$(.GetCellDouble(i, j, .GetCurSheet))
Else
Debug.Print .GetCellString(i, j, .GetCurSheet)
PDFstr2 = .GetCellString(i, j, .GetCurSheet)
End If
End If
f = PDFstr1 + "," + PDFstr2
PDFstr1 = ""
PDFstr2 = ""
Tstr = Tstr + f
f = vbNullString
Next
Next
MsgBox Tstr '用于观擦数据,Tstr就是我要的数据。
.Invalidate
End With
xiaojian(萧剑)
xuyongg(懶漢)
以后多指教