整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

VBA|自动对文件夹中的全部图片建立网页,并以图片名附加说明

如下文件夹:

要通过bat建立包含文件夹中全部图片的网页,如下:

上面的网页以图片的文件名作为图片说明,统一图片尺寸插入到网页中。

bat代码如下:

echo ^<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"^> >picList.html

echo ^<html xmlns="http://www.w3.org/1999/xhtml"^> >>picList.html

echo ^<head^> >>picList.html

echo ^<title^>picList^</title^> >>picList.html

echo ^<style type=text/css^> >>picList.html

echo div{width:74.125^%%;} >>picList.html

echo div{margin^:auto^;} >>picList.html

echo img{display^:block^;margin^:auto;} >>picList.html

echo img{padding^:2px 22px;} >>picList.html

echo img{border^:0 red solid;} >>picList.html

echo a:link{text-decoration: none; color:#fff;} >>picList.html

echo ^</style^>^</head^> >> picList.html

echo ^<body^>^<div^> >>picList.html

for /f "tokens=1,2 usebackq delims=." %%b in (`dir /o:n /b`) do (

if not "%%c" == "bat" (

if not "%%c" == "html" (

echo ^<p style="text-indent:-2em;"^>%%b ↓^</p^> >>picList.html

echo ^<a href="%%b.%%c" title="%%b.%%c"^>^<img src="%%b.%%c" /^>^</a^> >>picList.html

)

)

)

echo ^</div^> >>picList.html

echo ^</body^> >>picList.html

echo ^</html^> >>picList.html

代码说明:

首先写入picList.html的头文件部分,包括css代码;

然后通过一个循环获取全部图片文件的文件名和扩展名,写入图片文字说明并插入图片;

最后是写picList.html文件的尾文件部分。

delims=.后面如果有空格,则文件名中如果有空格时则会出错;

dir /o:d /b:显示文件夹名或文件名(包括扩展名)。

-End-

分享成果,随喜正能量】我们毕生的任务就是做一个优秀的普通人。这个优秀的普通人,热爱世界,热爱万物,热爱众生,然后踏踏实实地去寻找到一个自己内心喜欢又有时代价值的事情。一个人一辈子能够做好一两件事就很好了。。

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的劳动效率,而且可以提高数据的准确度。我推出的VBA系列教程共十套(本文的最后附有VBA教程目录和VBA工具目录),现在已经全部完成。

如果您VBA是入门阶段,可以打包选择7.1.3.9教程,第7套教程是入门,第1套教程是入门后的提高,第3套教程字典是必备的VBA之精华,第9套教程是实用的典型案例讲解。如果您有了一定的VBA基础可以根据自己的需要,进行教程的选择。教程提供的程序源码文件就如一座大型的代码库支持着大家的工作。同时还有实用的资料送给学员。

VBA是面向对象编程的语言,博大精深。很多朋友咨询英语和VBA的关系,这套《VBA即用型代码手册(汉英)》集合了众多的案例,案例我用汉语和英语同时发布,学员从中可以更好的领会和掌握VBA中用到的一些英语。今日的内容:WORD_VBA文本框的添加、删除、写入及保存为html文件

第六章 Word对象及示例

Word Objects and Macro Examples

7 文本框的添加、删除、写入 TextBox: Add, Delete, Write

Sub mynzAddTextBox()

ActiveDocument.Shapes.AddTextBox Orientation:=msoTextOrientationHorizontal, _

Left:=100, Top:=180, Width:=300, Height:=100

End Sub

Sub mynzDeleteTextBox()

'我们需要检查 oShape 是否属于 msoShapeRectangle 类型,并且它的文本框是否包含书写位置

Dim oShape As Shape

If ActiveDocument.Shapes.Count > 0 Then

For Each oShape In ActiveDocument.Shapes

If oShape.AutoShapeType = msoShapeRectangle Then

If oShape.TextFrame.HasText = True Then

oShape.Delete

End If

End If

Next oShape

End If

End Sub

Sub mynzWriteInTextBox()

Dim oShape As Shape

If ActiveDocument.Shapes.Count > 0 Then

For Each oShape In ActiveDocument.Shapes

If oShape.AutoShapeType = msoShapeRectangle Then

If oShape.TextFrame.HasText = True Then

oShape.TextFrame.TextRange.InsertAfter "VBA Case"

Exit For

End If

End If

Next oShape

End If

End Sub

8 另存为html文件SaveAs .Html File

Sub mynzSaveMewithDateName()

'将当前活动文档保存为过滤后的 html,并以当前时间命名

Dim strTime As String

strTime = Format(Now, "hh-mm")

ActiveDocument.SaveAs FileName:=ActiveDocument.Path & "\" & strTime, FileFormat:=wdFormatFilteredHTML

End Sub

【分享成果,随喜正能量】我20多年的VBA实践经验,全部浓缩在下面的各个教程中:

分享成果,随喜正能量】总有一段时光,让我们深感痛苦,但不是所有的时光都这样,我们要学会在黑暗中,找到一丝光芒,这束光来自于内心,它会让我们重新找到好日子。。

Excel VBA中,HTMLText对象表示可以包含HTML标记的文本。它通常用于向HTML文件或浏览器窗口中添加格式化文本。当您希望在Excel中显示具有样式和格式的文本时,您可以使用HTMLText对象来创建富文本。使用HTML标签和属性,您可以调整字体、颜色、大小、对齐方式等文本的外观和布局。HTMLText对象提供了使VBA能够生成并处理HTML文本的功能。

以下是一些示例代码,展示如何使用HTMLText对象的标签和属性来调整字体、颜色、大小、对齐方式等文本的外观和布局。

  1. 调整字体:
Dim htmlText As HTMLText
Set htmlText = New HTMLText

htmlText.Text = "<font face=""Arial"">This text has Arial font.</font>"
  1. 调整颜色:
Dim htmlText As HTMLText
Set htmlText = New HTMLText

htmlText.Text = "<span style=""color: red;"">This text is in red color.</span>"
  1. 调整大小:
Dim htmlText As HTMLText
Set htmlText = New HTMLText

htmlText.Text = "<font size=""4"">This text has size 4 font.</font>"
  1. 调整对齐方式:
Dim htmlText As HTMLText
Set htmlText = New HTMLText

htmlText.Text = "<div align=""center"">This text is centered.</div>"

以上代码示例中,我们首先创建了一个HTMLText对象,然后使用对象的Text属性来设置HTML文本。通过使用不同的HTML标签和属性,可以实现所需的调整,如字体、颜色、大小和对齐方式等。在这些示例中,我们分别使用了<font>标签、<span>标签、<div>标签和相应的属性来实现相应的调整。

请注意,为了在Excel中显示HTML文本,您可能需要使用其他工具或方法来将HTML文本应用于单元格或其他控件,例如使用Range对象的HTMLBody属性或通过将HTML文本加载到WebBrowser控件中来实现。以上代码仅提供了如何使用HTMLText对象来生成所需的HTML文本的示例。

在使用HTMLText对象编写VBA时,有几点需要注意:

  1. 引入Microsoft HTML Object Library:在使用HTMLText对象之前,需要确保已经引入了Microsoft HTML Object Library。可以通过选择"工具" -> "引用",然后勾选"Microsoft HTML Object Library"来进行引入。
  2. 编写有效的HTML代码:HTMLText对象要求传递有效的HTML代码。您需要熟悉HTML标签和属性,并确保编写的HTML代码正确且有效。如果HTML代码包含错误或无效的标签、属性或语法,可能会导致问题或错误。
  3. 转义特殊字符:在将文本作为HTML代码插入到HTMLText对象中时,需要注意转义特殊字符。例如,"<"字符应该写为"<",">"字符应该写为">",以确保HTML代码得到正确解析。
  4. 注意HTML代码对Excel的影响:HTMLText对象将HTML代码解释为富文本,并在Excel中显示相应的格式。您需要考虑HTML代码对单元格大小、行高、列宽等Excel布局的影响。大量的HTML代码可能导致单元格变得较大并影响整体布局。
  5. 处理HTML与VBA互动:HTMLText对象提供了一些方法和属性,可以与HTML文本进行交互。您可以使用这些方法和属性来读取或修改HTML文本的内容,例如查询或更改特定标签的属性。

下面提供一个简单的代码示例来演示如何使用HTMLText对象来创建和显示富文本。

Sub Example()
    Dim wb As Workbook
    Dim ws As Worksheet
    Dim rng As Range
    Dim htmlText As HTMLTextObject
    
    ' 创建新工作簿和工作表
    Set wb = Workbooks.Add
    Set ws = wb.Sheets(1)
    
    ' 在A1单元格中插入HTML格式的文本
    Set rng = ws.Range("A1")
    Set htmlText = rng.HTMLText
    htmlText.Html = "<b><font color='red'>这是粗体红色的文本。</font></b>"
    
    ' 设置字体大小和水平对齐方式
    rng.Font.Size = 12
    rng.HorizontalAlignment = xlCenter
    
    ' 将字体颜色设置为红色
    rng.Font.Color = RGB(255, 0, 0)
End Sub

在这个示例中,我们创建了一个新的工作簿,然后在第一个工作表的A1单元格中插入了一个HTML格式的文本。通过使用HTML标签<b>和<font>,我们将文本设置为加粗且红色。然后,我们设置了字体大小和水平对齐方式,并将字体颜色设置为红色。运行此代码,您将看到在Excel中的A1单元格中显示了粗体的红色文本。

总之,在使用HTMLText对象编写VBA时,需要熟悉HTML代码和相关的方法和属性,并确保生成的HTML代码有效且能够与Excel适配。