必须替换excel单元格中的单词。 使用喜欢
Sub test()
Dim a_row As String
Dim b_row As String
Dim row_counter As Integer
For row_counter = 1 To 600
a_row = "A" & row_counter
b_row = "B" & row_counter
Dim Findtext As String
Dim Replacetext As String
Findtext = Sheets("sheet1").Range(a_row).Value
Replacetext = Sheets("sheet1").Range(b_row).Value
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
If ws.Name <> ActiveWorkbook.Worksheets(1).Name Then
ws.Cells.Replace What:=Findtext, Replacement:=Replacetext, LookAt:= _
xlWhole, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End If
Next ws
Next row_counter
End Sub
sheet1中有两个列。 1st cols显示日语单词。第二列显示英文单词。
公園 park
夏 summer
緑 Green
青空 blue Sky
男の人 man
在col A中的第二张纸显示
column A
公園、夏、青空、緑、男の人
上面的代码替换日语单词。
如果LookAt:= _xlPart,替换后显示如下
公园,夏天,青天,绿色,男人の人
如果LookAt:= _xlWhole,它不会替换单词
在第二张纸中显示在单独的列中
A B C D E
公園 夏 青空 緑 男の人
如果LookAt:= _xlWhole那么
它完美运作。
我想做
在第二张纸中显示以逗号分隔的单个列A中的值
column A
公園、夏、青空、緑、男の人
需要像输出一样 公园,夏天,蓝天,绿色,男人
请提出一些想法..谢谢
答案 0 :(得分:2)
如果没有尾随'逗号',可能必须有重复的传球,可能会或可能不会做任何事情;需要涵盖所有可能的组合。
Sub delimitedTranslate()
Dim w As Long, vWRDs As Variant
With Worksheets("Sheet1")
vWRDs = .Range(.Cells(2, "A"), _
.Cells(Rows.Count, "A").End(xlUp).Offset(0, 1)) _
.Value2
End With
With Worksheets("Sheet2")
With .Columns("A")
For w = LBound(vWRDs, 1) To UBound(vWRDs, 1)
.Replace what:=vWRDs(w, 1) & ChrW(12289), _
replacement:=vWRDs(w, 2) & Chr(44), _
lookat:=xlPart, MatchCase:=False, searchformat:=False
.Replace what:=ChrW(12289) & vWRDs(w, 1), _
replacement:=Chr(44) & vWRDs(w, 2), _
lookat:=xlPart, MatchCase:=False, searchformat:=False
.Replace what:=Chr(44) & vWRDs(w, 1), _
replacement:=Chr(44) & vWRDs(w, 2), _
lookat:=xlPart, MatchCase:=False, searchformat:=False
Next w
End With
End With
End Sub
答案 1 :(得分:2)
在内存中执行此操作,使用数组更快捷,更轻松。如果我了解您的数据的设置方式 - 以下内容应该适用于您的查找/替换表位于Sheet1的A:B列中,而要替换的值位于sheet2中并且在单元格A1中以逗号分隔:
int float_asm(float x) {
int result;
asm ("ucomiss %[zero], %[x]\n\t"
"movl $2, %[result]\n\t"
"movl $3, %%esi\n\t"
"cmovpl %%esi, %[result]"
: [result] "=r" (result)
: [zero] "x" (0), [x] "x" (x)
: "cc", "rsi");
return result;
}