vba。找到如何让它工作

时间:2016-10-27 14:20:54

标签: excel vba excel-vba

我正在努力使这个VBA代码工作。我从来没有学过VBA代码,但在谷歌和你们的帮助下,我找到了一些答案,我的其他代码也有效。 在这一个我有一个问题。 我在这段代码中使用过两次.find。对于第一个它工作,而第二个它没有。当我调试时,我看到它有正确的列字母,并且它具有正确的值“czas1”但不知何故它无法在列“kolumnaletter”中找到它。 你知道为什么吗?

Sub uzpwyniki()
Dim n As String
Dim nrOs As String
Dim nrkolOS As Range
Dim nrli As Range
Dim czas1
Dim pelne As String
Dim kolumna As String, kolumnaLetter As String
Dim z As String
nrOs = ThisWorkbook.Sheets("Wyniki").Range("A1")
czas1 = 0
z = 3
Set nrkolOS = Sheets("Dane").Rows("1").Find(what:=(nrOs), LookIn:=xlValues, lookat:=xlWhole)
kolumna = nrkolOS.Column
kolumnaLetter = Chr(kolumna + 64)
Do While Worksheets("Wyniki").Cells(z, 4).Value <> ""
  czas1 = Worksheets("Wyniki").Cells(z, 4).Value
  Sheets("Dane").Select
  Set nrli = Sheets("Dane").Columns(kolumnaLetter).Find(what:=(czas1), LookIn:=xlValues, lookat:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext)
  Worksheets("Dane").Cells(nrli.Row, 2).Select
  Worksheets("Dane").Cells(nrli.Row, 2).Copy
  Worksheets("Wyniki").Cells(z, 3).PasteSpecial Paste:=xlPasteValues
  Sheets("Główna").Select
  Application.CutCopyMode = False
  z = z + 1
Loop
End Sub

0 个答案:

没有答案