zoukankan      html  css  js  c++  java
  • 20170907wdVBA_ImportPicturesBaseOnExcel

    Public Sub ImportPicturesBaseOnExcel()
    
        Dim shp As Object
        Dim xlApp As Object
        Dim Wb As Object
        Dim Rng As Object
        Dim FolderPath As String
        Dim ImgFolder As String
        Dim ExcelPath As String
        Dim FilePath As String
        Const ExcelFile As String = "身份证号.xls"
        
        FolderPath = ThisDocument.Path & ""
        ExcelPath = FolderPath & ExcelFile
        ImgFolder = FolderPath & "照片"
         
        On Error Resume Next
            Set xlApp = GetObject(, "Excel.Application")
            If xlApp Is Nothing Then
                Set xlApp = CreateObject("Excel.Application")
            End If
        On Error GoTo 0
        
        Set Wb = xlApp.workbooks.Open(ExcelPath)
        EndRow = Wb.worksheets(1).Range("A65536").End(3).Row
        Set Rng = Wb.worksheets(1).Range("A2:A" & EndRow)
        arr = Rng.Value
        Wb.Close
        xlApp.Quit
        
        If ThisDocument.InlineShapes.Count > 0 Then
            For Each shp In ThisDocument.InlineShapes
                shp.Delete
            Next shp
        End If
        If ThisDocument.Shapes.Count > 0 Then
            For Each shp In ThisDocument.Shapes
                shp.Delete
            Next shp
        End If
        
        Selection.WholeStory
        Selection.Delete
        Selection.HomeKey wdStory
        Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
        
        
        For i = LBound(arr) To UBound(arr)
           FilePath = ImgFolder & "*" & arr(i, 1) & "*.jpg"
            Debug.Print FilePath
            FileName = Dir(FilePath)
           If FileName <> "" Then
           
           FilePath = ImgFolder & FileName
                n = n + 1
                For j = 1 To 2
                    Set shp = ThisDocument.InlineShapes.AddPicture(FileName:=FilePath, _
                        LinkToFile:=False, SaveWithDocument:=True)
                        Selection.Collapse wdCollapseEnd
                Next j
            
                If n Mod 2 = 0 And n Mod 8 <> 0 Then
                    Selection.EndKey wdStory
                    Selection.TypeParagraph
                End If
                If n Mod 8 = 0 Then
                    Selection.EndKey wdStory
                    Selection.InsertBreak Type:=wdPageBreak
                End If
                
            End If
        Next i
        
        
        Set shp = Nothing
    End Sub
    

      

  • 相关阅读:
    Docker安装
    Shell编程
    Java:字节流和字符流(输入流和输出流)
    spring中的组合模式
    MySQL:ALTER COLUMN、MODIFY COLUMN 和 CHANGE COLUMN
    springboot项目打包docker镜像maven插件
    OGNL表达式
    项目中redisTemplate设置的key,redis客户端上查询不到的问题
    spring-session-data-redis反序列化问题
    深入理解SPI机制
  • 原文地址:https://www.cnblogs.com/nextseven/p/7488450.html
Copyright © 2011-2022 走看看