【发布时间】:2018-09-05 13:52:30
【问题描述】:
我有以下问题:
wsMotiv.Range("motiv_naam") = Cells(iRijnummer, iKolomnrNaam).Text 这一行给出了一个名称(字符串)值。为什么s = ThisWorkbook.Worksheets(1).Cells(iRijnummer, iKolomnrNaam).Text 行不做同样的事情?它通过了" "。
Sub (whatev)
AantalZichtbareRows
Dim rng As Range
Dim row As Range
Dim StrFileName As String
'If Aantalregels > 1 Then
Set rng = Selection.SpecialCells(xlCellTypeVisible)
For Each row In rng.Rows
iRijnummer = row.row
If iRijnummer > 1 Then
Windows(c_SourceDump).Activate
wsMotiv.Range("motiv_cid") = Cells(iRijnummer, iKolomnrCorpID).Text
wsMotiv.Range("motiv_naam") = Cells(iRijnummer, iKolomnrNaam).Text
wsMotiv.Range("motiv_ldg") = Cells(iRijnummer, iKolomnrHuidigeLeidingGevende).Text
Worksheets("stambestand").Activate
'naamOpmaken
Dim s As String: s = ThisWorkbook.Worksheets(1).Cells(iRijnummer, iKolomnrNaam).Text
Dim Position As Long, Length As Long
Dim n As String
Position = InStrRev(s, " ")
Length = Len(s)
n = Right(s, Length - Position)
End If
Next row
End Sub
【问题讨论】:
-
如果您有 2 个问题,最好分开提问。
-
我已经考虑过了。决定反对它,因为它可能在两次出现时是同一个问题。如果事实证明不是这样,我会把它们分开。
-
@Vityata :将其更改为 1 个问题,您帮我解决了第 2 个问题(提供不同的观点)。
标签: string vba function range runtime-error