请教大佬

使用问题 · 72 次浏览
鑫朋 创建于 24天9小时前

请教大佬,我需要把wps表格,复制发送到指定微信群

 

目前每次都是复制的文本,这里参数无效,我手动复制表格内容,运行动作,还是发送的文本,不知道怎么解决这个问题。。


流亡大街 24天9小时前 :

你此处是“选中图片”还是“选中文字”

流亡大街 最后更新于 24天9小时前
回复内容
鑫朋 15天13小时前
#1

我选中wps表格,复制之后,左上角显示:【选中文本

鑫朋 回复 鑫朋 15天13小时前 :

我复制wps表格,如果到微信粘贴,是直接粘贴为图片的,然后我在这个动作前加入vba处理好像也不行:Sub 选中()

    Dim ws As Worksheet
    Dim lastRow As Long
    Dim rng As Range
    
    ' 设置工作表(根据需要修改工作表名称)
    Set ws = ActiveSheet ' 或者使用 Set ws = ThisWorkbook.Sheets("Sheet1")
    
    ' 找到C列有数据的最后一行
    lastRow = ws.Cells(ws.Rows.Count, "C").End(xlUp).Row
    
    ' 确保最后一行不小于12
    If lastRow < 12 Then lastRow = 12
    
    ' 设置要复制的范围
    Set rng = ws.Range("C12:L" & lastRow)
    
    ' 选择范围
    rng.Select
    
    ' 复制为图片(使用Excel的命令)
    ' Selection.CopyPicture Appearance:=xlScreen, Format:=xlPicture
    
    ' 模拟快捷键(如果需要直接粘贴到某处,可以取消注释下面的代码)
    ' ActiveSheet.Paste Destination:=ws.Range("K12")
    
    ' 显示消息(可选)
    'MsgBox "已复制范围 " & rng.Address & " 为图片", vbInformation
    call 复制
End Sub

Sub 复制()
    On Error GoTo ErrorHandler
    
    ' 检查是否已选择区域
    If TypeName(Selection) <> "Range" Then
        ShowMessage GetSelection()
        Exit Sub
    End If
   
    Dim selectedRange As Range
    Set selectedRange = Selection
    
    ' 检查剪贴板是否可用
    If Application.CutCopyMode <> False Then
        Application.CutCopyMode = False
    End If
    
    ' 复制区域为图片
    selectedRange.CopyPicture Appearance:=xlScreen, Format:=xlPicture
    
    ' 短暂延迟确保复制完成
    Application.Wait Now + TimeValue("00:00:01")
    
    ShowMessage Getsuccess()
    Exit Sub

ErrorHandler:
    ShowMessage GetError()
End Sub

Function Getsuccess() As String
    Getsuccess = "图片已成功复制到剪贴板!"
End Function

Function GetSelection() As String
    GetSelection = "请先选择单元格区域!"
End Function

Function GetError() As String
    GetError = "操作失败,错误描述:" & Err.Description
End Function

' 修改后的显示消息函数 - 不使用 OnTime
Sub ShowMessage(msg As String)
    ' 方法1: 使用状态栏但不自动清除
    Application.StatusBar = msg
    
    ' 方法2: 或者使用简单的消息框
    ' MsgBox msg, vbInformation, "提示"
    

End Sub
回复主贴