急求:如何在Excel2007中利用VBA实现将选中区域的中文字体改成黑体,英文字体和数字改成Arial

很多朋友说先选黑体在选Arial就行了,可是遗憾的的是在我们公司的电脑上就是不行,在选了Arial后中文字体就变了,我到网上差了一段VBA如下:PrivateSubCom... 很多朋友说先选黑体在选Arial就行了,可是遗憾的的是在我们公司的电脑上就是不行,在选了Arial后中文字体就变了,我到网上差了一段VBA如下:
Private Sub CommandButton1_Click()
   
    Dim str As String
    Dim i As Integer
    str = ActiveCell
   
    With ActiveCell

        For i = 1 To Len(str)
            If Asc(Mid(str, i, 1)) < 0 Then
                .Characters(i, 1).Font.Name = "黑体"
            Else
                .Characters(i, 1).Font.Name = "Arial"
            End If
        Next i
   
    End With

End Sub
可是它每次只能改一个格子的
要是我想一下把选中区域的全部改了呢?不知道那个大侠帮帮我
急求~~
展开
 我来答
真的用户
2011-06-30 · TA获得超过410个赞
知道小有建树答主
回答量:406
采纳率:0%
帮助的人:322万
展开全部
把原有的代码做一个修改,把活动单元格(With ActiveCell)变成所选范围(With Selection)。你在执行下面的按钮的之前,选择要更改的范围,即可
Private Sub CommandButton1_Click()

Dim str As String
Dim i As Integer
str = ActiveCell

' With ActiveCell
With Selection

For i = 1 To Len(str)
If Asc(Mid(str, i, 1)) < 0 Then
.Characters(i, 1).Font.Name = "黑体"
Else
.Characters(i, 1).Font.Name = "Arial"
End If
Next i

End With

End Sub
追问
不行,用了以后英文也变黑体了
追答
不会啊,你看一下我的附图,左上角的是原有格式,右下角是修改后的格式。
百度网友066dc732e
2011-06-30 · TA获得超过1.2万个赞
知道大有可为答主
回答量:5675
采纳率:33%
帮助的人:1886万
展开全部
还用那么复杂吗?
先将选中区域设置为汉字字体,如“仿宋”,再选中区域,设置英文字体“Arial”就可以了啊,汉字按汉字字体显示,英文、数字按Arial显示
追问
恩,可是我们公司的电脑上,我先选了“仿宋”,再选“Arial”汉字就会变成不是仿宋了……不然也不用这么复杂啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
vbroot
2011-06-30 · TA获得超过454个赞
知道小有建树答主
回答量:536
采纳率:100%
帮助的人:359万
展开全部
Sub aa()
Dim str As String
Dim i As Integer
Dim a As Range

Set a = Range("a1:a10") '选择的范围

For Each b In a
str = b.Cells
For i = 1 To Len(str)
If Asc(Mid(str, i, 1)) < 0 Then
b.Cells.Font.Name = "黑体"
Else
b.Cells.Font.Name = "Arial"
End If
Next i
Next
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9bb046f
2011-06-30 · TA获得超过158个赞
知道小有建树答主
回答量:275
采纳率:0%
帮助的人:73.2万
展开全部
复制改好的格,选择性粘贴 格式 到其他要改的单元格即可
追问
问题是我有上万个格子要改……
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式