solidworks模型自定义属性的批量处理的宏代码

solidworks模型自定义属性的批量处理的宏代码
solidworks模型自定义属性的批量处理的宏代码

Attribute VB_Name = "利用子件处理属性1"

'利用子件进行自定义属性的批量处理的VBA代码

'比较完善的第一版完成时间2012.11.05,作者:张中锋

'适用于深圳东风有限公司solidworks老模型属性更改满足金蝶公司PLM系统要求实例'测试通过环境:2012.11.05 windows XP SP3 ;solidworks 2010 SP02(32bit)

'''''''''''''''' '''''''''''''''' '''''''''''''''' '

'版本更新日志

'1.0 2012.10.29 ①对属性中,存在空白情况处理时数据异常进行修复;②对于已经存在的自定义属性值,保护其值不被处理

'已知的bug记录

Public swModel2 As SldWorks.ModelDoc2

Public PARTNAME_Value_temp As String

Public MATERIAL_Value2_temp As String

Public swApp As SldWorks.SldWorks

Sub main()

Dim swModel As SldWorks.ModelDoc2

Dim swModelDocExt As SldWorks.ModelDocExtension

Dim swSelMgr As SldWorks.SelectionMgr

Dim swBOMAnnotation As SldWorks.BomTableAnnotation

Dim swBOMFeature As SldWorks.BomFeature

Dim swBomTable As Variant

Dim boolstatus As Boolean

Dim BomType As Long

Dim Configuration As String

Dim TemplateName As String

Dim i, j, n, k As Integer

Dim swBOM_name As String

Dim component As Component2

Dim value_temp As Integer

Dim time_start As String

Dim txt_path As String

Set swApp = Application.SldWorks

Set swModel = swApp.ActiveDoc

txt_path = swModel.GetPathName() & " .csv"

Open txt_path For Output Shared As #400

Print #400, "图样代号"; ","; "零件名称"; ","; "零件材料"; Chr(10);

Configuration = swModel.GetActiveConfiguration().Name

If swModel.GetType = 1 Then

Set swModel2 = swApp.ActiveDoc

Call Custominfo_change(Configuration)

ElseIf swModel.GetType = 2 Then

value_temp = swModel.ResolveAllLightWeightComponents(False) '轻化取消到还原状态

Dim Components As Variant

Dim SingleComponent As Variant

Dim swComponent As https://www.360docs.net/doc/2c8399555.html,ponent2

Components = swModel.GetComponents(False) '获取整个装配体的组成部件(零件或者装配体)

For Each SingleComponent In Components '遍历

Set swComponent = SingleComponent

If Not swComponent Is Nothing Then

If swComponent.GetModelDoc() Is Nothing Then '判断子件对象模型是否存在;轻化状态下

获取不到,为空

Debug.Print "没有通过"

Else

Dim x As Integer

Do '此循环实现处理当前模型和子件属

If Not swComponent Is Nothing And x < 99 Then '一个很原始的方法强制使用

当前的模型

Set swModel2 = swModel

x = 100

Else

Set swModel2 = swComponent.GetModelDoc() '取得子件对象模型

x = 101

End If

Call Custominfo_change(swModel2.GetActiveConfiguration().Name)

Loop Until x = 101

End If

Else

Debug.Print " 不能获取到子件"

End If

Next

Else

MsgBox "不是零件或者装配体模型"

End If

swModel.Save '保存文件

Close #400

MsgBox "属性转换完毕"

End Sub

Private Function Custominfo_change(ByVal vConfigName As String)

'处理模型的属性

Dim vConfigNameArr As Variant

Dim vCustInfoNameArr As Variant

Dim vCustInfoName As Variant

Dim vCustInfoName2 As Variant

Dim vCustInfoNameArr2 As Variant

Dim vCustInfoName2_temp As String

Dim vCustInfoName_temp As String

Dim a() As String

Dim b() As String

Dim m, n As Integer

vCustInfoNameArr = swModel2.GetCustomInfoNames2(vConfigName)

vCustInfoNameArr2 = swModel2.GetCustomInfoNames

m = 0

If Not IsEmpty(vCustInfoNameArr2) Then '取得自定义属性表的属性数据

For Each vCustInfoName2 In vCustInfoNameArr2

vCustInfoName2_temp = CStr(vCustInfoName2)

If vCustInfoName2_temp = "" Then '处理属性表中的空白数据行m = m - 1

ReDim Preserve a(1, m)

Exit For

End If

vCustInfoName_temp_value2 = swModel2.CustomInfo(vCustInfoName2)

ReDim Preserve a(1, m)

a(0, m) = Trim(vCustInfoName2_temp)

a(1, m) = Trim(vCustInfoName_temp_value2)

m = m + 1

ReDim Preserve a(1, m)

Next

End If

n = 0

If Not IsEmpty(vCustInfoNameArr) Then '取

得配置特定属性表的属性数据

For Each vCustInfoName In vCustInfoNameArr

vCustInfoName_temp = CStr(vCustInfoName)

If vCustInfoName_temp = "" Then '处理属性表中的空白数据行

n = n - 1

ReDim Preserve b(1, n)

Exit For

End If

vCustInfoName_temp_value = swModel2.CustomInfo2(vConfigName, vCustInfoName)

ReDim Preserve b(1, n)

b(0, n) = Trim(vCustInfoName_temp)

b(1, n) = Trim(vCustInfoName_temp_value)

n = n + 1

ReDim Preserve b(1, n)

Next

End If

Dim s, t As Integer

If m > 0 Then '当数组a中有数据时

For s = 0 To UBound(a, 2) '循环取出a中存储的每一条数据

If a(0, s) <> "" And a(1, s) <> "" Then '当数据有效时

Call OldCustominfo_Value(a(0, s), a(1, s), "PARTNAME")

ElseIf a(0, s) = "" Then '当数据无效时(此情况只会是取得最后一条数据时)

Exit For

End If

Next s

If PARTNAME_Value_temp = "" Then '在a中没有获取到合适的数据

If n > 0 Then

For t = 0 To UBound(b, 2) '循环取出b中存储的每一条数据

If b(0, t) <> "" And b(1, t) <> "" Then '当数据有效时

Call OldCustominfo_Value(b(0, t), b(1, t), "PARTNAME")

ElseIf b(0, t) = "" Then '当数据无效时(此情况只会是取得最后一条数据时)

Exit For

End If

Next t

End If

End If

End If

If m > 0 Then

For s = 0 To UBound(a, 2)

If a(0, s) <> "" And a(1, s) <> "" Then

Call OldCustominfo_Value(a(0, s), a(1, s), "MATERIAL")

ElseIf a(0, s) = "" Then

Exit For

End If

Next s

If MATERIAL_Value2_temp = "" Then

If n > 0 Then

For t = 0 To UBound(b, 2)

If b(0, t) <> "" And b(1, t) <> "" Then

Call OldCustominfo_Value(b(0, t), b(1, t), "MATERIAL")

ElseIf b(0, t) = "" Then

Exit For

End If

Next t

End If

End If

End If

Dim DRAWNO_value As String

Dim PARTNAME_value As String

Dim MATERIAL_value As String

PARTNAME_value = Trim(PARTNAME_Value_temp)

MATERIAL_value = Trim(MATERIAL_Value2_temp)

'使用模型的绝对路径获取文件图号,比使用标题更安全

Dim DRAWNO_value1, DRAWNO_value2, DRAWNO_value13 As String

Dim DRAWNO_value_N As Integer

DRAWNO_value1 = swModel2.GetPathName

DRAWNO_value2 = StrReverse(DRAWNO_value1)

DRAWNO_value_N = InStr(1, DRAWNO_value2, "\")

DRAWNO_value3 = Mid

(DRAWNO_value2, 8, DRAWNO_value_N - 8)

DRAWNO_value = StrReverse(DRAWNO_value3)

If Not IsEmpty(vCustInfoNameArr2) Then

For Each vCustInfoName2 In vCustInfoNameArr2 '删除自定义属性

bRet = swModel2.DeleteCustomInfo(vCustInfoName2)

Next

End If

swModel2.AddCustomInfo3 "", "DRAWNO", swCustomInfoText, DRAWNO_value '写入图样代号DRAWNO

swModel2.AddCustomInfo3 "", "PARTNAME", swCustomInfoText, PARTNAME_value '写入零件名称PARTNAME

Call new_unit

If Trim(Left(DRAWNO_value, 1)) <> "Q" And Trim(Left(DRAWNO_value, 2)) <> "GB" Then '检查标准件

swModel2.AddCustomInfo3 "", "MATERIAL", swCustomInfoText,

MATERIAL_value '写入零件材料MATERIAL

Call new_Material

Weight_value = Show_mass(swModel2.GetPathName) '获取零件重量的数值

swModel2.AddCustomInfo3 "", "Weight", swCustomInfoText,

Format(Weight_value, "0.0") '写入零件重量Weight,使用1位小数

"

swModel2.AddCustomInfo3 "", "SPEC", swCustomInfoText, "

"

swModel2.AddCustomInfo3 "", "REMARK", swCustomInfoText, "

"

End If

Print #400, DRAWNO_value; ","; PARTNAME_value; ",";

MATERIAL_value; Chr(10);

PARTNAME_Value_temp = ""

MATERIAL_Value2_temp = ""

End Function

Private Function new_unit() '更改单位

Dim boolstatus As Boolean

boolstatus =

swModel2.Extension.SetUserPreferenceInteger(swUserPreferenceIntegerValue_e.swUni

tSystem, 0, swUnitSystem_e.swUnitSystem_Custom)

boolstatus =

swModel2.Extension.SetUserPreferenceInteger(swUserPreferenceIntegerValue_e.swUni tsLinearFractionDenominator, 0, 0)

boolstatus =

swModel2.Extension.SetUserPreferenceToggle(swUserPreferenceToggle_e.swUnitsLinea rFeetAndInchesFormat, 0, False)

boolstatus =

swModel2.Extension.SetUserPreferenceInteger(swUserPreferenceIntegerValue_e.swUni tsDualLinearFractionDenominator, 0, 0)

boolstatus =

swModel2.Extension.SetUserPreferenceToggle(swUserPreferenceToggle_e.swUnitsDualL inearFeetAndInchesFormat, 0, False)

boolstatus =

swModel2.Extension.SetUserPreferenceInteger(swUserPreferenceIntegerValue_e.swUni tsMassPropDecimalPlaces, 0, 1)

boolstatus =

swModel2.Extension.SetUserPreferenceInteger(swUserPreferenceIntegerValue_e.swUni tsMassPropMass, 0, swUnitsMassPropMass_e.swUnitsMassPropMass_Kilograms)

End Function

Private Function new_Material() '更改材质

Dim matDbs As Variant

Dim swPart As Object

Dim MaterialDatabase As String

Dim MATERIAL_value_temp As String

Dim reval As Boolean

'判断当前的模型文件类型

If swModel2.GetType() = 1 Then 'swModel_filename_value 值为1时,打开零件模型

matDbs = swApp.GetMaterialDatabas

es

Set swPart = swModel2

MaterialDatabase = matDbs(0)

MATERIAL_value_temp = swPart.GetMaterialPropertyName2(Configuration_Name, MaterialDatabase) '获取模型树中的材质值

If MATERIAL_value_temp = "" Then '如果没有指定材质,材质默认为普通碳钢

reval = swModel2.SetMaterialPropertyName2(Configuration_Name, MaterialDatabase,

"普通碳钢")

swModel2.ClearSelection2 True

End If

End If

End Function

Private Function OldCustominfo_Value(ByVal temp11 As String, ByVal temp22 As String,

ByVal temp23) As String '处理旧自定义属性及值

OldCustominfo_Value = ""

If Trim(temp22) <> "" And Left(Trim(temp22), 1) <> Chr(34) Then

If temp23 = "PARTNAME" Then '如果调用的参数为PARTNAME,需要处理的变量为 PARTNAME_value_temp,赋相关值

If temp11 = "PARTNAME" And Left(Trim(temp22), 1) <> "名" And Left(Trim(temp22), 1) <> "D" And Left(Trim(temp22), 1) <> "零" Then

PARTNAME_Value_temp = Trim(temp22)

OldCustominfo_Value = PARTNAME_Value_temp

ElseIf temp11 = "图样名称" Or temp11 = "零件名称" Or temp11 = "名称" Then

If Left(Trim(temp22), 1) <> "D" And Left(Trim(temp22), 1) <> "零" And Left(Trim(temp22), 1) <> "装" And Left(Trim(temp22), 1) <> "名" Then

PARTNAME_Value_temp = Trim(temp22)

OldCustominfo_Value = PARTNAME_Value_temp

Else

OldCustominfo_Value = ""

End If

Else

OldCustominfo_Value = ""

End If

ElseIf temp23 = "MATERIAL" Then '如果调用的参数为MATERIAL,要处理的变量为 MATERIAL_value_temp,赋相关值

If temp11 = "MATERIAL" And Left(Trim(temp22), 1) <> "材" And Left(Trim(temp22), 1) <> "D" And Left(Trim(temp22), 1) <> "零" Then

MATERIAL_Value2_temp = Trim(temp22)

OldCustominfo_Value = MATERIAL_Value2_temp

ElseIf temp11 = "材料名称" Or temp11 = "零件材料" Or temp11 = "材料" Then

temp33 = Left(Trim(temp22), 1)

If temp33 = "钢" Or temp33 = "4" Or temp33 = "1" Or temp33 = "2" Or temp33 = "Q" Or temp33 = "总" Or temp33 = "部" Or temp33 = "橡" _

Or temp33 = "尼" Or temp33 = "组" Or temp33 = "圆" Or temp33 = "方" Or temp33 = "焊" Or temp33 = "装" Or temp33 = "合" Or temp33 = "高" _

Or temp33 = "角" Or temp33 = "扁" Or temp33 = "热" Or temp33 = "冷" Or temp33 = "外" Or temp33 = "分" Or temp23 = "有" Then

MATERIAL_Value2_temp = value_G(Trim(temp22))

OldCustominfo_Value = MATERIAL_Value2_temp

Else

OldCustominfo_Value = ""

End If

Else

Ol

dCustominfo_Value = ""

End If

End If

Else

OldCustominfo_Value = ""

End If

End Function

Private Function value_G(ByVal value_G_in As String) As String '处理零件材料的值中的国标号

Dim value_G_temp As String

Dim value_G_out As String

Dim G_nomber As Integer

value_G_temp = Trim(value_G_in) '删除变量中开头和结尾的空白字符

G_nomber = InStr(value_G_temp, "G") '查找字符“G”的第一次出现的位置

If G_nomber > 1 Then '如果获得“G”value_G_out = Left(value_G_temp, G_nomber - 1) '获得字符“G”之前的字符串

If value_G_out = "" Then

value_G = "" '返回一个空值,

没有取得值"

Else

value_G = value_G_out

End If

Else '没有字符“G”

value_G = value_G_temp

End If

End Function

Private Function Show_mass(ByVal DRAWNO_value11 As String) As String '获取质量的数值

Dim DRAWNO_value12, DRAWNO_value113 As String

Dim DRAWNO_value1_N As Integer

DRAWNO_value12 = StrReverse(DRAWNO_value11)

DRAWNO_value1_N = InStr(1, DRAWNO_value12, "\")

DRAWNO_value13 = Mid(DRAWNO_value12, 1, DRAWNO_value1_N)

DRAWNO_value1 = StrReverse(DRAWNO_value13)

Show_mass = Chr(34) & "SW-Mass@" & DRAWNO_value1 + Chr(34)

End Function

Solidworks实用技巧大全(设置)

SOLIDWORKS实用技巧大全(设置) MW-20170915 在使用SolidWorks进行产品设计时,为了提高使用效率和符合设计者的习惯,用户可以对SolidWorks进行用户化设置。本文将介绍自定义SolidWorks的一些非常实用的设置,同时让读者对自定义SolidWorks有较深的了解和认识。设置分为系统设置和文档设置,首先要明白这2个设置的区别,系统设置是关于solidworks软件的设置,对所有打开的文档都有作用。文档设置是针对当前文档,跟随文档走的,所以可以通过保存让不同的文档拥有不同的文档设置。 系统设置 启动时打开上次打开的文档 默认设置是【从不】,如果选择始终,就可以在下次启动SW时自动打开上次正常关闭SW前所打开的文档,说正常关闭是指不包括SW崩溃或者非正常关机等的情况。

输入尺寸值 默认设置是勾选的,意义在于每次标注尺寸之后都会自动激活输入尺寸的界面,用于模型草图需要所有尺寸都需要自己意图来定义,当不需要可以定义每个尺寸,只是用于形状约束时,可以取消勾选,便于快速标注尺寸 声音 默认的情况下,SW的声音设置都是【无】,需要自己手动设置,设置的好处是,当我们需要完成一个时间很长的操作时,不用盯着界面等待SW完成,可以在等待的同时切换到别的工作,等SW完成指定的操作,会发出设定的声音提示我们。设置方法如下:

重新使用所删除的辅助、局部及剖面师徒中的视图字母 通过勾选该设置可以使编辑工程图时,局部,辅助视图,剖面视图的字母自动保持连续。

背景颜色 修改视区颜色,可以让背景颜色符合自己的喜好,绿色可以保护视力,具体设置如下:

windows 中 批量更改文件名的几种方法

批量更改文件名的几种方法 方法一: 1.打开文件夹(里面包含很多文件,文件名很乱)-----单选第一个文件(使呈蓝色) 2.按CTRL+A键(全选) 3.再按F2(选中第一个文件) 4.第一个文件输入A------回车-------则文件夹内被选定的其他文件自动被命名为 A(1) ,A(2), A(3)------这个方法很简单方便快捷。朋友们不妨试试。 方法二: 其实Windows XP本身就具有批量更改文件名,并自动加上序号的功能。 操作步骤如下: 1、将需要统一更改文件名的文件拷贝到同一个文件夹里(若有同名文件,需要分两次进行。即先按下面的方法更改掉一些造成同名的文件名,然后再拷贝到一起,统一再做更改)。 拷贝后,按名称排序的文件如下图: 上图14个文件是由两个相机分三次拍摄的,故文件名有三段。要求是按拍摄日期、时间排序顺序更改文件名。其实就是IMAG开头的文件应该在中段。 2、点击“相片拍摄日期”,将文件按“相片拍摄日期”先后排序。排序后的文件如下图: 3、选择全部要批量改名的文件,如下图: 4、将鼠标移到第一个文件名上,单击右键。选择“重命名”,然后将文件名改为你需要的名字。这里是改为“GaiMing(11).JPG”。其中,括号中必须填入数字,但可填入任意数字,该数字即是下面文件名的起始序号,下面的文件名将在此数字的基础上逐个顺序递增一位。如下图: 5、第一个文件的文件名输入后,按确认键或将鼠标在任意别处点一下,所有文件名即时按要求批量更改完成。如下图: 其他几点说明:

1、在你用右键单击选择第一个文件进行“重命名”操作时,其他文件要保持在选中状态。否则要重新选择。 2、对第一个文件名进行“重命名”时,可以不输入括号和数字。确认后,改名后的第一个文件将没有序号,然后其后面的文件从(1)开始递增编号。如下图: 3、建议对第一个文件改名时,使用起始数字的方式。因为若不使用数字,则文件名将自动按上图那样生成。这种情况下,若需要再按文件名进行排序时,则其排序形式将是下图所示。或者会是(10)-(13)排在(1)和(2)之间了。 4、当使用数字时,建议起始数字为“11”、“101”“1001”等,位数等于最大文件数的位数。即当文件是99个以内时,用“11”;当文件是999个以内时,用“101”等。这样可使所有文件名的位数相同,避免出现按文件名排序时,出现(10)-(19)排在(1)和(2)之间,(20)-(29)排在(2)和(3)之间的情况。 5、“取消重命名”在这里一次只能取消一个文件,而且只能用在最后命名的十个文件上。所以如果要重命名的文件数量多于十个,你最好在改名之前,先将照片在其他目录做个备份。 6、文件命名的顺序是依据屏幕上文件的显示顺序从上至下编号的,所以,批量改名之前,一定要让文件按你要求的顺序排好序。如果浏览器中文件按日期倒序排列的,那么重命名之后,第一个文件将会是日子最近的那个文件。又或者,你在右键点击菜单进行改名的的时候,不是点击第一个文件,而是点在了中间某个文件的话,那么重命名将从这个文件开始,顺序排到最后一个文件,然后再从第一个文件排下来。所以一定要注意。 方法三: 批处理批量修改文件名笔记 默认分类2009-08-21 21:12:09 阅读43 评论0 字号:大中小订阅 朋友知道我学P,说又一个文件夹又一堆莲花争霸1[https://www.360docs.net/doc/2c8399555.html,].3gp的视频 他希望改为莲花争霸1.3gp 于是开始了批重命名文件名的过程 首先,决定用for /d来遍历目录 但是发现总是失败 哎····原来for /d是遍历文件夹的,不能是文件 接着,用for /r 哈哈 这下应该可以了吧 于是有了下面的代码 @echo off & setlocal enabledelayedexpansion for /r e:\1 %%a in (*.3gp) do ( set str=%%a set str1=!str:[https://www.360docs.net/doc/2c8399555.html,]=! pause ren !str! !str1! )

solidworks的制定及标题栏的设置

第一部分零件模板的制定 第一步:打开“文件”——“属性”出现“摘要信息”对话框,点击“自定义”在“属性名称”一栏中依次建立1“件号”、2“图号”、3“材质”、4“数量”、5“重量”……如下图: 第二步:点击“工具”——“选项”进入“系统选项(s)—常规”对话框,设置“系统选项”和“文件属性”。其中,在“文件属性”中,在“出详图”中,“尺寸标注标准”设置为“GB”国标;点击“单位”—“自定义”来设置单位。如下图:

点击“保存”在“保存类型”中选择“part templates (*.prtdot)”;“文件名”为“*.prtdot”形式。 第二部分装配图模板的制定 第一步、第二步的设置和零件模板的第一步、第二步设置一样。 在保存时不同: 第三部分工程图模板的制定 新建一个工程图,选择“图纸格式/大小”,选择“标准图纸大小”中你想要的图纸大小。 第一步:打开“工具——选项”设置的参数,其中“文件属性”中“单位”需要重新设置。第二步:打开“文件——属性”出现如下如对话框,并设置如下:

第三步、在空白图纸上点击“鼠标右键”选择“图纸”中的“编辑图纸格式”,其中标题栏就可以进行编辑,删去原来的标题栏,制定出你想要的标题栏,如下图: 第四步、设置“名称”“图号”“件号”等项。点击“插入——注解——注释”,如下图:

点击“注释”中“链接到属性”,出现“链接到属性”对话框, 选中“图纸属性中所指定视图中模型”,并在“文件属性”中选择你所设置的项目, 如:选择“名称”设置结果“”比选择“中间对称”。 其中在设置图纸比例时,注意选择“当前文件”,在“文件属性”中选择“图纸比例”来设置图纸比例。 第五步:标题栏中的所有设置全部设置完后,点击鼠标“右键”,在“图纸(图纸格式)”上

SolidWorks 属性标签编制程序 自定义属性

关键字: SolidWorks属性标签编制程序自定义属性 % q# M, f9 i& u3 m, q3 ` 一、打开属性标签编制程序 有多种方法可以启动属性标签编制程序: 如图1所示。 图1 任务窗格中的属性标签编制程序 (2)点击Windows【开始】菜单>【所有程序】>【SolidWorks 2013】>【SolidWorks工具】>【属性选项卡编制器】。 (3)如果在【工具】>【选项】>【系统选项】>【文件位置】显示下项的文件夹【自定义属性文件】 自定义属性选项卡上的【现在生成】,如图2所示。

图2 任务窗格中的自定义属性 属性标签编制程序打开后的界面如图3所示。可以为零件、装配体、工程图和焊件创建自定义属性界面。本文以创建一个零件属性标签模板为例,来介绍属性标签编制程序的使用方法。读者可以根据需要创建装配体和工程图以及焊件的属性标签模板。 图3 属性标签编制程序 二、属性标签编制程序 属性标签编制程序主要界面由三部分组成。如图4所示:

图4 属性标签编制程序各个窗格 左窗格1为控件调色板,包含组框、文本框、列举等控件单元; 中央窗格2,可以将组框拖动至中央窗格,将单元拖动至中央窗格内的组框中,有一金色边界围绕活动单元,该单元的属性出现在右窗格中,可以对设置其属性; 右窗格3,可以设置组框和其它单元的属性,默认打开时可以设置属性标签模板的页面层次属性,指定正在生成的属性标签模板的类型(零件、装配体、或工程图),并可生成一显示在标签顶部的信息。 组框: 一个属性标签模板中可以包含多个组框,使用组框可以将单元分组。选择组框后,组框出现一金色边界,可以在右窗格中设置组框的标题,以及组框默认是展开的还是折叠的。如图5所示。 图5 组框属性 文本框: 将文本框单元拖动至组框内。在右窗格中设置文本框单元的标题。(建议将单元标题和自定义属性名称设置为相同。)在名称中输入自定义属性名称,如“文件序列号[支持正版!~违反版规者请会员热心举报]”,类型选择“文本”,数值栏保留位空。如图6所示。

solidworks自定义属性及标题栏

solidworks自定义属性及标题栏 自定义属性关键点:(1)只需建立零件(*.prtprp)、装配体文件自定义属性(*.asmprp),不需建立工程图自定义属性。(2)建立零件、装配体自定义属性后,需在零件、装配体文件的:文件-属性-自定义中建立与自定义属性中相对应的属性项,并作为零件、装配体文件模板保存,标题栏自动引用才能正确链接。 步骤如下: 1、利用属性选项卡编辑器编辑自定义属性,比如添加:名称、材料、单重、图号。建立好 后保存为零件自定义属性(*.prtprp)文件。(装配体自定义属性文件为*.asmprp) 2、新建一个零件文件,并点击:文件-属性。

3、弹出摘要信息对话框,在自定义标签中属性名称下键入与自定义属性中建立的相同属性 名称,完成后确定。(这一步很重要,如没有做这一步,在标题栏引用时是链接不到自定义属性的) 4、点击:保存-另存为。 5、另存为下文件类型选择Part Templates(*.prtdot),作为零件模板保存。 到此零件自定义属性就建立完成了,绘图时新建零件时只需选择此模板,在工程图标题栏就可以引用这些自定义属性了。装配体模板建立方法类似。 一、标题栏链接

1、用上面建立的零件模板建立一个零件文件。 2、随意绘制一个图形,并填写自定义属性里对应项。 3、保存文件,然后点击:文件-从零件制作工程图。

4、选择一个工程图文件模板(可以是默认模板,建立后按个人意图重新修改)。 5、放置视图(这个不用图了吧)。 6、在图纸空白地方点右键选择编辑图纸格式。 7、选择需要链接属性的文字,然后点击左边的链接到属性。 1.选择文字 2.点击链接到属性

文件批量重命名

批量文件重命名的方法 2010年05月30日星期日9:48P.M. [源自网络,在此感谢!] 批量文件重命名的方法批量重命名文件的方法,可选范围在下列3点中: 1.DOS命令或批处理文件 2.小型绿色软件(不包括ACDSEE) 3.其他简单方法 Better File Rename 4.批量重命名的好软件—— ——Better 5.批量文件重命名 Windows XP提供了批量重命名文件的功能,在资源管理器中选择几个文件,接着按F2键,然后重命名这些文件中的一个,这样所有被选择的文件将会被重命名为新的文件名(在末尾处加上递增的数字)。 6.DOS命令: for/f%%a in(*.*)do(ren%%a..... )看你的具体情况和要求。 至于软件可以试试—拖把更名器 -_____________________________________________ 最强之dos命令–for(是新手学习FOR语句的好资料) 这篇文章是网上找的,很多初学DOS的朋友对FOR语句掌握的好不是太过熟悉,希望这边文章能够给你开阔思路帮助你把FOR语句学好,主要的参数介绍和实例讲的都很清楚,也希望对DOS越来越感兴趣--->发挥你的想像力吧

正文开始 以前常觉得DOS的命令行功能太弱,无法象UNIX一样可以用命令行完成非常复杂的操作。实际上,当MS从WIN2K开始将命令行增强后,已经借鉴了相当多UNIX的优点,虽然还无法做到象UNIX那么灵活,但已可完成绝大多数的任务,比如用&&和连接两个(或更多)命令,由前一个的返回值来决定下一个是否执行,等等。而在这些增强中,最明显的,就是FOR 命令。 举个例子,用适当的参数,可用FOR命令将date/t的输出从"Sat07/13/2002"变成你想要的格式,比如,"2002-07-13": c:\>for/f"tokens=2,3,4delims=/"%a in('date/t')do@echo %c-%a-%b 2002-07-13 该例将在(3)中详细说明。 0.基本应用 简单说,FOR是个循环,可以用你指定的循环范围生成一系列命令。最简单的例子,就是人工指定循环范围,然后对每个值执行指定的命令。例如,想快速报告每个硬盘分区的剩余空间: for%a in(c:d:e:f do@dir%a\find"bytes free" 将输出: 8Dir(s)1,361,334,272bytes free 15Dir(s)8,505,581,568bytes free 12Dir(s)12,975,149,056bytes free 7Dir(s)11,658,854,400bytes free 用它可以使一些不支持通配符的命令对一系列文件进行操作。

SolidWorks自定义属性之属性标签编制程序

一、打开属性标签编制程序 有多种方法可以启动属性标签编制程序: (1)启动SolidWorks 2013,选择【任务窗格】>【SolidWorks资源】中的【属性标签 编制程序】,如图1所示。 图1 任务窗格中的属性标签编制程序 (2)点击Windows【开始】菜单>【所有程序】>【SolidWorks 2013】>【SolidWorks 工具】>【属性选项卡编制器】。 (3)如果在【工具】>【选项】>【系统选项】>【文件位置】显示下项的文件夹【自定义属性文件】中的路径下无自定义属性标签模板存在时,也可以在打开SolidWorks文件时点击SolidWorks任务窗格的自定义属性选项卡上的【现在生成】,如图2所示。

图2 任务窗格中的自定义属性 属性标签编制程序打开后的界面如图3所示。可以为零件、装配体、工程图和焊件创建自定义属性界面。本文以创建一个零件属性标签模板为例,来介绍属性标签编制程序的使用方法。读者可以根据需要创建装配体和工程图以及焊件的属性标签模板。 图3 属性标签编制程序 二、属性标签编制程序 属性标签编制程序主要界面由三部分组成。如图4所示:

图4 属性标签编制程序各个窗格 左窗格1为控件调色板,包含组框、文本框、列举等控件单元; 中央窗格2,可以将组框拖动至中央窗格,将单元拖动至中央窗格内的组框中,有一金色边界围绕活动单元,该单元的属性出现在右窗格中,可以对设置其属性; 右窗格3,可以设置组框和其它单元的属性,默认打开时可以设置属性标签模板的页面层次属性,指定正在生成的属性标签模板的类型(零件、装配体、或工程图),并可生成一显示在标签顶部的信息。 组框: 一个属性标签模板中可以包含多个组框,使用组框可以将单元分组。选择组框后,组框出现一金色边界,可以在右窗格中设置组框的标题,以及组框默认是展开的还是折叠的。如图5所示。 图5 组框属性 文本框: 将文本框单元拖动至组框内。在右窗格中设置文本框单元的标题。(建议将单元标题和自定义属性名称设置为相同。)在名称中输入自定义属性名称,如“文件序列号”,类型选择“文本”,数值栏保留位空。如图6所示。

宏命令将图片批量替换成统一大小

宏命令将图片批量替换成统一大小 步骤: 1.点击【文件】-【选项】,在弹出的窗口中选择【自定义功能区】,勾选开发工具选项后,点击【确定】,如下图: 2.会在菜单上方出现开发工具的相关功能菜单,选择【开发工具】,点击【宏】,如下图: 3.点击【宏】后,弹出提示框,在宏名处输入宏名“setpicsize”点击创建按钮,如下图:

4.在弹出的VBA窗口中将如下代码复制到其中,如下图: 统一替换图片大小的VBA代码如下(单引号后面的内容为备注): '1.改变图片大于14.5cm的宽度 '注:高跟宽的数值单位为px,而word中的单位为cm(1px约等于0.0352cm) Sub setpicsize() Dim j '计数图片个数 For j = 1 To ActiveDocument.InlineShapes.Count '文件中图片总个数,图片类型为inlineshapes picheight = ActiveDocument.InlineShapes(j).Height '高度赋值 picwidth = ActiveDocument.InlineShapes(j).Width '宽度赋值 If (ActiveDocument.InlineShapes(j).Width > 375 And ActiveDocument.InlineShapes(j).Width < 415) Then '判断图片宽度范围,将宽度大于13.23cm的图片,小于14.68的图片统一缩放

ActiveDocument.InlineShapes(j).Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '图片居中 ActiveDocument.InlineShapes(j).Width = 411 '设置宽度为411px,约14.5cm ActiveDocument.InlineShapes(j).Height = picheight * (411 / picwidth) '设置图片高度,根据设置的宽度值等比例缩放图片高度 ElseIf (ActiveDocument.InlineShapes(j).Width > 417) Then '判断图片宽度范围,将宽度大于14.7cm的图片统一缩放 ActiveDocument.InlineShapes(j).Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '图片居中 ActiveDocument.InlineShapes(j).Width = 411 '设置宽度为411px,约14.5cm ActiveDocument.InlineShapes(j).Height = picheight * (411 / picwidth) '设置图片高度,根据设置的宽度值等比例缩放图片高度 End If Next j End Sub 注意: (1)修改图片尺寸时,代码运行前需要根据实际情况进行修改图片尺寸的大小范围限制代码,图中标注处所示 (2)修改图片尺寸时,需计算修改的图片的宽高值,因为图片的高跟宽的数值单位为px,而word中的单位为cm,根据每台电脑不同的分辨率,1px约等于0.0352cm (3)图片替换之前文档最好先保存副本,因为运行宏后的文档无法撤销操作,如果操作错误,只能通过关闭文档时,选择不保存后,重新打开 (4)代码可用英文状态下的单上引号进行备注,删掉不影响代码的运行 (5)如修改图片尺寸的代码无需修改,可直接在点击【宏】后,在弹出提示框中选择宏名“setpicsize”,点击运行按钮进行操作 (6)一次性修改的文档中图片过多时,文档会未响应一小段时间,请耐心等待即可5.点击运行按钮,运行统一替换图片尺寸代码

自己动手编程实现文件批量重命名

最近用BT下电视剧,每一集的视频文件的文件名都被加上了那个网站的地址,显得非常的杂乱无章,还有在网上下图片的时候,文件名也会非常乱,手动修改的话非常费时费力,于是动手写了一个自动化的工具,反正下TVB的剧集是我的嗜好嘛~~~ 程序运行效果图: 下面还是贴源码吧,有部分源码是由MFC框架自动生成的: /****************************************************************************** ************ *FileName:ReNameDlg.h *Author:Swtar *Date:2011-4-8 ******************************************************************************* ************/ #if !defined(AFX_RENAMEDLG_H__66D0A503_8786_45F8_9B75_40A4D9A3081C__INCLUDED_) #define AFX_RENAMEDLG_H__66D0A503_8786_45F8_9B75_40A4D9A3081C__INCLUDED_

#if _MSC_VER > 1000 #pragma once #endif class CReNameDlg : public CDialog { public: CReNameDlg(CWnd* pParent = NULL); //声明控件操纵函数 void ControlControler(BOOL bOp); //MFC自动生成的数据映射 enum { IDD = IDD_RENAME_DIALOG }; CButton m_cancel; CButton m_ok; CEdit m_kzmct; CButton m_browser; CSpinButtonCtrl m_spin; CString m_directory; CString m_kzm; int m_start; protected: virtual void DoDataExchange(CDataExchange* pDX); protected: HICON m_hIcon; virtual BOOL OnInitDialog(); afx_msg void OnPaint(); afx_msg HCURSOR OnQueryDragIcon(); afx_msg void OnBrowser(); virtual void OnOK(); virtual void OnCancel(); DECLARE_MESSAGE_MAP() }; #endif /****************************************************************************** ************

批量修改图片代码

word中批量修改图片大小 方法一: 这部分要说的是把word中的所有图片修改成固定的并且相同的长和宽! 1、打开word,工具-宏-宏(或者直接按Alt+F8)进入宏的界面,如下面所示,输入一个宏名,宏名自己起,能记住就行! 2、宏名起好了,单击“创建”进入Visual Basic 编辑器,输入如下代码并保存 代码如下: Sub setpicsize() '设置图片大小 Dim n ' 图片个数 On Error Resume Next ' 忽略错误 For n = 1 To ActiveDocument.InlineShapes.Count 'InlineShapes 类型图片ActiveDocument.InlineShapes(n).Height = 400 '设置图片高度为 400px ActiveDocument.InlineShapes(n).Width = 300 '设置图片宽度 300px Next n For n = 1 To ActiveDocument.Shapes.Count 'Shapes 类型图片 ActiveDocument.Shapes(n).Height = 400 '设置图片高度为 400px ActiveDocument.Shapes(n).Width = 300 '设置图片宽度 300px Next n End Sub 3、返回word,工具-宏-宏(或者直接按Alt+F8),再次进入宏的界面,选择刚才编辑好的宏,并单击“运行”按钮,就可以了!(图片多时,可能会花一些时间)

方法二: 1、在word中按alt+f11组合键,进入VBA模式 2、在左边的工程资源管理器中找到你的word文档,在其上右键/添加/模块 3、把下面代码复制,粘贴进去. 4、更改数值, 改一下宽度和高度数值(10),点运行(类似播放按钮.)或f5,即可设置文档中全部图片 代码如下: Sub Macro() Mywidth=10 ‘10为图片宽度(厘米) Myheigth=10 ‘10为图片高度(厘米) For Each iShape In ActiveDocument.InlineShapes iShape.Height = 28.345 * Myheigth iShape.Width = 28.345 * Mywidth Next iShape End Sub word批量修改图片大小——按比例缩放篇 这部分要说的是把word中的所有图片按比例缩放! 具体操作同上,只是代码部分稍做修改,代码如下: 代码如下: Sub setpicsize() '设置图片大小

批量修改文件名的简单方法

批量修改文件名的简单方法 整体思路:我们要有一个原文件名和新文件名的对应关系,然后结合重命名命令ren 使用批处理 bat文件解决。 找一个实际案例为例稍稍详细的说明一下:假如我们要将原为员工号为名字的照片文件修改为身份证号为名字的照片文件。 第一步,我们应该从财务或者人事那里要到人员的信息对照表,实在没有,我们可以做一个,用excel来制作,如下图的A、B列,然后使用excel公式生成C列 ="ren "&A2&".jpg "&B2&".jpg" 此处使用了excel的一个字符链接公式,不明白的可以直接复制来用,若想一探究竟可以详细的参考excel的相关知识,需要留意的是每一个 & 符号前后需要有字符(需要用英文状态下的双引号,如"ren ")或者单元格名称(不需要引号,如A2)。 第二步,将C列所有生成的内容(不含表头单元格),复制,点击“开始”-“程序”-“附件”-“记事本”,粘贴,另存为bat文件(保存类型选择“所有文件”,然后在文件名处输入批量修改.bat)。

第三步,将生成的bat文件放到需要修改文件名的文件夹里,双击即可。 上面的例子是针对没有规则的文件名,如果原始文件名和新生成的文件名都有一定的规则,你就可以使用excel的功能将其拖拽生成或者使用公式和函数生成新的文件名。

如果上例中文件名已经带有后缀,那就更好办了,直接在A列的前面增加一列,全部输入 ren 然后不要什么公式生成,直接将三列数据复制到记事本,保存为bat文件,将bat文件复制到图片文件夹,双击即可。 通过这个例子我们知道核心就是 bat 批处理和 ren 重命名命令。学会了这个你就不怕以后再命名大批量的文件了,毕竟从网上下载的那些修改文件名的程序不能解决你的所有问题,特别是如果你的文件名是没有规则的名字。

Word编程宏批量修改图片大小

word批量修改图片大小 借助word的宏功能可以很好完成这一任务,无论word里有多少图片,很容易就在一瞬间搞定.。文档里面有几百张图片,规格都不一样,堆在文档里面很难看。为美化文档,将图片规范化,都设置成425x320像素大小。手工修改每张图片很费时间也费鼠标,所以,你得好好看看以下如何做了。 打开word,按下Alt+F8,出现宏界面,为新建的宏取名为AdjustPicWidthAndHeight 点击编辑按钮,输入下面红色字体标出的内容 Sub AdjustPicWidthAndHeight() ' ' AdvertisePublishAs 宏 ' 将广告发布导出为 PDF 和 XPS 'Sub setpicsize() '设置图片大小

Dim n '图片个数 On Error Resume Next '忽略错误 For n = 1 To ActiveDocument.InlineShapes.Count 'InlineShapes类型图片ActiveDocument.InlineShapes(n).LockAspectRatio = msoFalse '不锁定图片的纵横比 ActiveDocument.InlineShapes(n).Height = 320 '设置图片高度为 320px ActiveDocument.InlineShapes(n).Width = 425 '设置图片宽度 425px Next n For n = 1 To ActiveDocument.Shapes.Count 'Shapes类型图片 ActiveDocument.InlineShapes(n).LockAspectRatio = msoFalse '不锁定图片的纵横比ActiveDocument.Shapes(n).Height = 320 '设置图片高度为 320px ActiveDocument.Shapes(n).Width = 425 '设置图片宽度 425px Next n End Sub word批量修改图片大小——固定长宽篇 这部分要说的是把word中的所有图片修改成固定的并且相同的长和宽! 1、打开word,工具-宏-宏(或者直接按Alt+F8)进入宏的界面,如下面所示,输入一个宏名,宏名自己起,能记住就行!

如何给文件批量重命名

教你 Windows系统超级技巧批量更改文件名 通常,我们要为各式各样的照片做下面这样的工作。比如说,在科西嘉度假的时候你照了大量的数码照片,而你的照相机偏偏将它们自动命名为DSCN0595.jpg、 DSCN0596.jpg,等等。你肯定希望能把它们改成更加易认,好记的名字。你当然可以一个一个地把它们改成例如“我和朱莉在灯塔前.jpg”,“再一次在酒吧聚会.jpg”等等。但如果这些照片不是寥寥几张的话,这样做无疑会耗费掉大量的宝贵时间。相对较好的 折中方案是将这些照片取名为“科西嘉2006-1.jpt”,“科西嘉2006-2.jpt”等等。 如果你使用的是Windows XP系统,就能很方便地完成这项工作。首先,将你归好类的文件放在同一个文件夹下,既可以全选(Ctrl+A),也可以仅选择需要重命名的文件。右键单击第一个文件,选择“重命名”。这样除了第一个文件会出现命名框以外,其他文件都只是保持选中状态。将文件名更改为“科西嘉2006.jpg”(如图1),即键入“科西嘉2006”。等上几秒,很快你就会看到所有被选中的文件将更名为科西嘉2006(1), 科西嘉2006(2)等等(如图2)。

这里还有其他几件事要注意。首先“取消重命名”在这里一次只能取消一个文件,而且只能用在最后命名的十个文件上。所以如果要重命名的文件数量多于十个,你最好在改名之前,先将照片在其他目录做个备份。文件命名的顺序依据屏幕上文件的显示顺序,也就是说如果浏览器中文件按日期倒序排列的,那么重命名之后,第一个文件将会是日子最近的那个文件。又或者,你在右键点击菜单的时候不是点击第一个文件,而是点在了中间某个文件的话,那么重命名将从这个文件开始,顺序排到最后一个文件,然后再从第一个文件排下来。 这里需要注意的是,你必须为第一个文件指定一个扩展名,但是对于其他文件,重命名命令并不会影响到它们原有的扩展名。所以如果你的这些文件是不同类型混放的话,重命名只会修改文件名部分使之保持一致,而扩展名并不做改动。如果你觉得第一个文件名后面没有编号很突兀,也可以将其命名为“科西嘉 2006(0).jpg”。你可以任意指定括号中的起始编号,后面的重命名过程会自动从该编号开始顺序排下去。 如果你希望改名时有更多的选择,或者你并没有在使用XP的话,下面这个站点提供了一个不错的免费软件,地址是:https://www.360docs.net/doc/2c8399555.html,/rename。这个软件可以在Windows 95 到XP的各版本操作系统下工作,而且包含很多非常有用的选项,比如说以0开头、保持大小写、作者姓名以及一些子文件夹的操作等;同时还包括一些比较个性化的选项,比如说缩短长文件名、把时间改成电影《星际迷航》里面的时间表示方式等等等等;它还能提供一些很强大的功能,比如说同时修改一组文件的扩展名之类。

用宏批量调整word中图片版式大小方向

Sub 图片方向()..................................................... Sub 图片对齐() Application.ScreenUpdating = False '关闭屏幕更新 Dim n On Error Resume Next ActiveDocument.Shapes(n).Select orizontalPosition = _ wdRelativeHorizontalPositionMargin wdRelativeVerticalPositionMargin Next Application.ScreenUpdating = True '恢复屏幕更新 End Sub Sub 图片大小() On Error Resume Next Dim mywidth Dim myheight Application.ScreenUpdating = False '关闭屏幕更新 mywidth = Val(InputBox(Prompt:="单位为厘米(cm);如果输入为0,则图片保持原始纵横比,宽度根据输入的高度数值自动调整;", Title:="请输入图片宽度", Default:="0")) * 28.35 myheight = Val(InputBox(Prompt:="单位为厘米(cm);如果输入为0,则图片保持原始纵横比,高度根据输入的宽度数值自动调整;", Title:="请输入图片高度", Default:="0")) * 28.35 '------------------------------------------------------------------ '调整嵌入式图形 Dim pic As InlineShape For Each pic In ActiveDocument.InlineShapes If mywidth = "0" Then

35款免费批量重命名软件

35款免费批量重命名软件.txt大悲无泪,大悟无言,大笑无声。我们手里的金钱是保持自由的一种工具。女人在约会前,一定先去美容院;男人约会前,一定先去银行。35款免费批量重命名软件 批量,我爱批量。当发现做一件事情,原本用工具或软件进行批量处理也能达到相同效果,可却花了数倍的时间去处理的时候,会很讨厌自己的愚蠢。当你在电脑上做某个操作时,如果觉得可能会有批量操作的工具,那你宁可花上一天的时间去找出这么一个适合的工具,而不是进行枯燥的重复性工作。 平常我们最常用的批量处理有批量处理图片大小和批量重命名文件。我们已经发布过15款图片批量处理软件下载,下面则是35款批量重命名软件,包含文件重命名和一些MP3 ID3值批量处理的软件。35款或许有点太多,但记住,你值得花时间去找出一款最适合你的。那将让你以后的类似工作事半功倍。 黄金屋-文件批量编号软件 用于mp3,3gp,mp4等资源的自动编号或者去除编号。以利于导出歌本和通过编号查找资源。操作说明:分四步A:设置路径点按钮【1.增加文件路径】则上面的数据框会插入一行。请点每行右面的小按钮。 Rename Master 批量改名工具,可以根据 MP3 文件的 Tag Info 改名,还可以同时更改文件属性 Bulk Rename Utility 最好的文件更名工具!完全免费,界面友好,共分为13项操作内容。你可以批量给文件或文件夹重命名,随时更名随时预览。你可以批量给文件或文件夹名称添加前缀或后缀,添加日期,自动编号,批量删除指定字符 Pfrank 成批重新命名文件,能使用固定的表达式,其中预先确定重新命名指令或者组合。被预先确定的重新命名指令允许字母和计数的插入,记载日期,父文件夹命名 Aoao Batch Rename 一很适用的免费软件批量更新文件名,运行速度快,占用资源少,而且是绿色软件。比如从数码相机取出400张张片,用本软件改名字,10秒不到就可以完成(操作时间除外) 文件批量改名 一款功能强大的文件改名工具。可以把所有的文件快速方便的重命名;支持所有格式;支持改名预览;支持文件属性更改;支持文件时间修改;支持多文件夹同时处理;支持音乐、图像改名前预览等功能。 Mp3标签修改器 可以根据您歌曲的歌曲名等属性进行重命名: 从网上下载的Mp3往往文件名无法准确识别是什么歌曲,需要打开才知道,用Mp3标签修改器,可以帮助您批量按您想要的规则命名,容易识别!

solidworks模型自定义属性的批量处理的宏代码

Attribute VB_Name = "利用子件处理属性1" '利用子件进行自定义属性的批量处理的VBA代码 '比较完善的第一版完成时间2012.11.05,作者:张中锋 '适用于深圳东风有限公司solidworks老模型属性更改满足金蝶公司PLM系统要求实例'测试通过环境:2012.11.05 windows XP SP3 ;solidworks 2010 SP02(32bit) '''''''''''''''' '''''''''''''''' '''''''''''''''' ' '版本更新日志 '1.0 2012.10.29 ①对属性中,存在空白情况处理时数据异常进行修复;②对于已经存在的自定义属性值,保护其值不被处理 '已知的bug记录 Public swModel2 As SldWorks.ModelDoc2 Public PARTNAME_Value_temp As String Public MATERIAL_Value2_temp As String Public swApp As SldWorks.SldWorks Sub main() Dim swModel As SldWorks.ModelDoc2 Dim swModelDocExt As SldWorks.ModelDocExtension Dim swSelMgr As SldWorks.SelectionMgr Dim swBOMAnnotation As SldWorks.BomTableAnnotation Dim swBOMFeature As SldWorks.BomFeature Dim swBomTable As Variant Dim boolstatus As Boolean Dim BomType As Long Dim Configuration As String Dim TemplateName As String Dim i, j, n, k As Integer Dim swBOM_name As String Dim component As Component2 Dim value_temp As Integer

用宏批量调整中图片版式大小方向

Sub 图片对齐() .................................... 错误!未指定书签。 Sub 图片大小().................................... 错误!未指定书签。Sub 浮于文字上方()................................ 错误!未指定书签。Sub 浮于文字上方()................................ 错误!未指定书签。Sub 连续()........................................ 错误!未指定书签。Sub 版式转换().................................... 错误!未指定书签。Sub 图片方向().................................... 错误!未指定书签。Sub 图片对齐() Application.ScreenUpdating = False '关闭屏幕更新 Dim n On Error Resume Next ActiveDocument.Shapes(n).Select orizontalPosition = _ wdRelativeHorizontalPositionMargin wdRelativeVerticalPositionMargin Next Application.ScreenUpdating = True '恢复屏幕更新 End Sub Sub 图片大小() On Error Resume Next Dim mywidth Dim myheight Application.ScreenUpdating = False '关闭屏幕更新 mywidth = Val(InputBox(Prompt:="单位为厘米(cm);如果输入为0,则图片保持原始纵横比,宽度根据输入的高度数值自动调整;", Title:="请输入图片宽度", Default:="0")) * 28.35 myheight = Val(InputBox(Prompt:="单位为厘米(cm);如果输入为0,则图片保持原始纵横比,高度根据输入的宽度数值自动调整;", Title:="请输入图片高度", Default:="0")) * 28.35 '------------------------------------------------------------------ '调整嵌入式图形 Dim pic As InlineShape For Each pic In ActiveDocument.InlineShapes If mywidth = "0" Then

相关文档
最新文档