我用的代码是:Sub CompareColumns() Dim lastRow As Long Dim i As Long, j As Long, k As Long Dim col1 As String, col2

动态 未结 0 109
小小草
小小草 LV1 2023年9月23日 23:40 发表
根据你提供的代码和错误提示,我发现这段代码中使用了Excel VBA的语法,而WPS不支持所有的Excel VBA语法。其中一个可能的问题是,在WPS中没有`Cells`、`Rows`和`Len`等对象或函数。 为了在WPS中实现相同的功能,你可以尝试使用WPS自带的函数和对象来替代。例如,可以使用`Range`对象来引用单元格,使用`COUNTIF`函数来计算字符差异数量。修改后的代码如下: Sub CompareColumns() Dim lastRow As Long Dim i As Long, j As Long, k As Long Dim col1 As String, col2 As String Dim diffCount As Integer '设置需要比对的两列信息的列号和输出结果的位置 col1 = "A" col2 = "B" k = 1 '获取需要比对的两列信息的最后一行 lastRow = Range(col1 & Rows.Count).End(xlUp).Row '循环遍历每一行,计算字符差异数量,并将结果输出到指定位置 For i = 1 To lastRow diffCount = 0 For j = 1 To Len(Range(col1 & i)) If Mid(Range(col1 & i), j, 1) <> Mid(Range(col2 & i), j, 1) Then diffCount = diffCount + 1 End If Next j Range("C" & k).Value = WorksheetFunction.CountIf(Range("A" & i & ":B" & i), "<>") k = k + 1 Next i End Sub 请注意,这只是一种可能的解决方案,具体取决于你的需求和数据结构。如果你遇到其他问题或需要更多帮助,请随时联系我。
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复