邮件-原有vba32位的程序装的是64位的office,declare后面已经加过Ptrsafe了也不行

问题描述

原有vba32位的程序装的是64位的office,declare后面已经加过Ptrsafe了也不行

Public Declare PtrSafe Function SetTimer Lib "user32" _
(ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerfunc As Long) As Long
Public Declare PtrSafe Function KillTimer Lib "user32" _
(ByVal hwnd As Long, ByVal nIDEvent As Long) As Long
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Function WinProcA(ByVal hwnd As Long, ByVal uMsg As Long, ByVal idEvent As Long, ByVal SysTime As Long) As Long

End Function
KillTimer 0, idEvent
DoEvents
Sleep 100
Application.SendKeys "%s"
End Function

' 发送单个邮件的子程序
Sub SendMail(ByVal to_who As String, ByVal subject As String, ByVal body As String, ByVal attachement As String)
Dim objOL As Object
Dim itmNewMail As Object
'引用Microsoft Outlook 对象
Set objOL = CreateObject("Outlook.Application")
Set itmNewMail = objOL.CreateItem(olMailItem)
With itmNewMail
.subject = subject '主旨
.body = body '正文本文
.Bcc = to_who '收件者
.Display '启动Outlook发送窗口
SetTimer 0, 0, 0, AddressOf WinProcA
End With
Set objOL = Nothing
Set itmNewMail = Nothing
End Sub

'批量发送邮件
Sub BatchSendMail()
Dim rowCount, endRowNo
endRowNo = Cells(1, 1).CurrentRegion.Rows.Count
'逐行发送邮件
For rowCount = 1 To endRowNo
SendMail Cells(rowCount, 1), Cells(rowCount, 2), Cells(rowCount, 3), Cells(rowCount, 4)
Next
End Sub

求大神帮忙改成64位可用的群发邮件程序,不胜感激

时间: 2024-11-02 05:39:12

邮件-原有vba32位的程序装的是64位的office,declare后面已经加过Ptrsafe了也不行的相关文章

在64位服务器上运行32位jdk及程序,相交与64位jdk程序的运行速度会变慢吗

问题描述 在64位服务器上运行32位jdk及程序,相交与64位jdk程序的运行速度会变慢吗 一个OA系统本来是用64位jdk,运行在64位系统上,现在用32位jdk运行在64位系统上,这样是不是比之前运行速度慢呢,感觉程序慢了... 解决方案 基本不会,差异微乎其微,因为实际上x64上运行32bit程序,cpu使用原生的32bit模式运行.

32位与64位的区别是什么,64位系统有什么优势

第一,设计初衷不同.64位操作系统的设计初衷是:满足机械设计和分析.三维动画.视频编辑和创作,以及科学计算和高性能计算应用程序等领域中需要大量内存和浮点性能的客户需求.换句简明的话说就是:它们是高科技人员使用本行业特殊软件的运行平台.而32位操作系统是为普通用户设计的. 第二,要求配置不同.64位操作系统只能安装在64位电脑上(CPU必须是64位的).同时需要安装64位常用软件以发挥64位(x64)的最佳性能.32位操作系统则可以安装在32位(32位CPU)或64位(64位CPU)电脑上.当然,

电脑32位怎么换64位 32位win7系统怎么更换成64位

  32位win7系统怎么更换成64位:最近上网看到一些评论,问电脑32位怎么换64位,当然,对于电脑比较熟悉的朋友会觉得这个问题有些奇怪,但是对于很多初学者来说这确实是一个值得回答的问题,比如一些用户问到:电脑里安装的是32位旗舰版win7,家里的电脑内存是4G,据说换成64位能提高性能,问怎么更换? 其实32位换成64位不只是所谓的数字的改变,并不是把系统里面的32改成64就可以了.32位和64位系统的区别不仅仅是数字的变化,而是内核的区别. 因此,现在大家应该能明白,32位win7系统是无

android 开发 项目前期用的32位jdk 后期可以换成64位jdk吗?

问题描述 android 开发 项目前期用的32位jdk 后期可以换成64位jdk吗? 同项目组的其他同事安装的32位jdk,我想安装64位的,不知道会不会有影响 解决方案 会有影响的,64位的虽然向下兼容,但是有些项目里边的jar包并不是都可以正常运行的,我自己遇到过这样的问题

用farpoint for .net v4.0做的程序, 发布在64位的windows server 2008 的服务器上报错,请问是服务器64位的问题吗?

问题描述 主要是分页报错,请高手解答. 解决方案 解决方案二:可能是服务器根本没有接电源.解决方案三:在64位系统里重新编译一下,解决方案四:引用2楼wind_cloud2011的回复: 在64位系统里重新编译一下, 困难是暂时还没有64位的开发环境.

64位虚拟打印-求一份64位的虚拟打印设备

问题描述 求一份64位的虚拟打印设备 请问win 7系统64位可以安装虚拟打印机吗?安装后如何使用,有没有使用说明,有的话最好提供一份 解决方案 Adobe Acroba Reader 就有虚拟打印机

关于Windows32位版本与64位版本之间区别的说明

要使用 64位版本的 Windows Vista,必须满足以下面两个条件:   1.计算机必须拥有64位的处理器:   2.必须为计算机中的设备提供64位的设备驱动程序.   安装64位版本的 Windows Vista 时的注意事项   1.计算机中可能有一种或多种设备没有 64 位的设备驱动程序:   2.设备驱动程序必须经过数字签名:   3.不支持 32 位的设备驱动程序:   4.32 位的程序可能无法与 64 位的操作系统完全兼容:   5.可能难以找到专为 64 位操作系统编写的程

如何在64位版本Linux上开发运行32位应用程序

最近换了Linux系统,由i686换成了x86-64,导致在进行开发的时候出用不了原来SDK中32位的开发工具.于是,博主找到如下文章,博主亲测实用: 如何在64位版本Linux上开发运行32位应用程序  内容如下: 很多程序员(特别是别的公司的)跟我抱怨说他们32位软件无法在我们的64位Linux系统上正常运行,而在他们32位机上正常,其实这个很好解决,一般 是64位系统安装后没有默认安装glibc的32位版本,通过简单的执行以下命令即可实现在64位Linux系统上开发运行32位应用程序,而不

华硕a40jc装windows8 64位系统

  几年前买了这部a40jc,之后很久都没装系统,主要是里面装了很多东西,特别是那个oracle,之前装的时候配置很麻烦,项目用途又隔一段时间就会用到,所以一直没有重装.最近买了个固态硬盘,又从朋友那边买了个二手的内存(2条4g,他自己买了2条8g的).决定装个64位windows 8玩一下.结果装了好几次都有问题.主要是装完系统后,安装nvidia的显卡驱动,装完驱动重启之后就进不了系统了.后来发现装完win8后,如果关机再启动就没问题,只要直接用系统的重启就进不了系统.郁闷了很久,又装了个6