paste - H3m1sphere/test GitHub Wiki
็่งฃใใพใใใ็ปๅใ้ ็ฝฎใใ้ใซใๅใฎ็ปๅใฎๅณ็ซฏใใ5ใใคใณใ้ใใฆๆฌกใฎ็ปๅใ้ ็ฝฎใใใใใซไฟฎๆญฃใใๅฟ ่ฆใใใใพใใใใฎ่ฆไปถใๆบใใใใใซใๅ็ปๅใฎไฝ็ฝฎใๅใฎ็ปๅใฎไฝ็ฝฎใจใตใคใบใซๅบใฅใใฆๅ็ใซ่จ็ฎใใๅฟ ่ฆใใใใพใใ
ไปฅไธใฏใ็ปๅใ้ฉๅใซ้ ็ฝฎใใใใใฎไฟฎๆญฃใใใVBAใณใผใใงใใใใฎใณใผใใงใฏใๅใฎ็ปๅใฎๅณ็ซฏใใ5ใใคใณใใฎ้้ใ้ใใฆๆฌกใฎ็ปๅใ้ ็ฝฎใใๅใฎๆๅพใซๅฐ้ใใใๆฌกใฎ่กใซ็งปๅใใพใใ
Sub ็ปๅใ่ฒผใไปใใ()
Dim imgPath As Variant
Dim startCell As Range
Dim img As Picture
Dim i As Integer
Dim columnCount As Integer
Dim rowCount As Integer, columnOffset As Integer
Dim nextLeft As Double, nextTop As Double, maxHeightInRow As Double
' ็ปๅใใกใคใซใฎ้ธๆ
imgPath = Application.GetOpenFilename("็ปๅใใกใคใซ (*.jpg;*.gif;*.png), *.jpg;*.gif;*.png", MultiSelect:=True)
If IsArray(imgPath) = False Then Exit Sub ' ใฆใผใถใผใใญใฃใณใปใซใใๅ ดๅ
' ่ฒผใไปใใ้ๅงใใใปใซใจๅๆฐใๅ
ฅๅ
Set startCell = Application.InputBox("้ๅงใปใซใ้ธๆใใฆใใ ใใ", Type:=8)
columnCount = Application.InputBox("ๅๆฐใๅ
ฅๅใใฆใใ ใใ", Type:=1)
' ็ปๅใฎ่ฒผใไปใ
rowCount = 0
columnOffset = 0
maxHeightInRow = 0
nextLeft = startCell.Left
nextTop = startCell.Top
For i = LBound(imgPath) To UBound(imgPath)
Set img = ActiveSheet.Pictures.Insert(imgPath(i))
With img
.Left = nextLeft
.Top = nextTop
.Placement = xlMoveAndSize
' ๆฌกใฎ็ปๅใฎไฝ็ฝฎใ่จ็ฎ
nextLeft = .Left + .Width + 5 ' 5ใใคใณใใฎ้้ใ่ฟฝๅ
If .Height > maxHeightInRow Then maxHeightInRow = .Height
End With
columnOffset = columnOffset + 1
If columnOffset >= columnCount Then
' ๆฌกใฎ่กใธ็งปๅ
columnOffset = 0
nextTop = nextTop + maxHeightInRow + 5 ' 5ใใคใณใใฎ้้ใ่ฟฝๅ
nextLeft = startCell.Left
maxHeightInRow = 0
End If
Next i
End Sub
ใใฎใณใผใใฏใๅ็ปๅใๅใฎ็ปๅใฎๅณ็ซฏใใ5ใใคใณใใฎ้้ใ้ใใฆ้ ็ฝฎใใใใใจใไฟ่จผใใพใใใพใใๆๅฎใใใๅๆฐใซ้ใใใใๆฌกใฎ่กใซ็งปๅใใฆๅใณ้ ็ฝฎใ้ๅงใใพใใใใใซใใใ็ปๅใ้ฉๅใซ้ ็ฝฎใใใ้ใชใๅใใใจใชใๆด็ถใจใใใฌใคใขใฆใใซใชใใฏใใงใใ