我试过谷歌搜索它,我试图自己解决它,但没有运气。
我有一张需要填写其他工作表特定结果的工作表。我在调试窗口和msgbox中获得了准确的结果,但是当我将它应用到工作表时,它会一直覆盖,直到最后一个结果符合标准。
我也尝试将结果放在数组中,但只有数组中的第一行填充了所有数据。
编辑:我很抱歉没有正确解释。 GlobalniIndentifikator是ID。我有两张床单。一个每行只有一个id,另一个对多行具有相同的ID。我知道问题是ID是一个常数,但我不知道如何解决而不会得到错误的数据。 Dim x As Integer
Dim y As Integer
Ukupnoredova = Sheet2.Cells(Rows.Count, 8).End(xlUp).Row
For x = 2 To Ukupnoredova
If Sheet2.Cells(x, 8) = GlobalniIndentifikator Then
Sheet7.Cells(8, 1) = Sheet2.Cells(x, 1)
Sheet7.Cells(12, 1) = Sheet2.Cells(x, 1)
Sheet7.Cells(16, 1) = Sheet2.Cells(x, 1)
Sheet7.Cells(20, 1) = Sheet2.Cells(x, 1)
Sheet7.Cells(24, 1) = Sheet2.Cells(x, 1)
Sheet7.Cells(28, 1) = Sheet2.Cells(x, 1)
Sheet7.Cells(32, 1) = Sheet2.Cells(x, 1)
End If
Next x
答案 0 :(得分:1)
@Jeeped的建议......
Dim x As Integer
Dim y As Integer
Dim lngCnt As Long
Ukupnoredova = Sheet2.Cells(Rows.Count, 8).End(xlUp).Row
lngCnt = 1
For x = 2 To Ukupnoredova
If Sheet2.Cells(x, 8) = GlobalniIndentifikator Then
Sheet7.Cells(8, lngCnt) = Sheet2.Cells(x, 1)
Sheet7.Cells(12, lngCnt) = Sheet2.Cells(x, 1)
Sheet7.Cells(16, lngCnt) = Sheet2.Cells(x, 1)
Sheet7.Cells(20, lngCnt) = Sheet2.Cells(x, 1)
Sheet7.Cells(24, lngCnt) = Sheet2.Cells(x, 1)
Sheet7.Cells(28, lngCnt) = Sheet2.Cells(x, 1)
Sheet7.Cells(32, lngCnt) = Sheet2.Cells(x, 1)
lngCnt = lngCnt + 1
End If
Next x