Private Const DT_LEFT As Long = &H0
Private Const DT_BOTTOM As Long = &H8
Private Const DT_SINGLELINE As Long = &H20
Private Const TRANSPARENT As Long = 1
Private Const GUID_IDISPATCH_INTERFACE As String = "{00020400-0000-0000-C000-000000000046}"
Private Const CF_BITMAP As Long = 2
Private Const CF_PALETTE As Long = 9
Private Const PICTYPE_BITMAP As Long = 1
Private Const IMAGE_BITMAP As Long = 0
Private Const LR_COPYRETURNORG As Long = &H4
Private Const LR_LOADFROMFILE As Long = &H10
Private Const LOGPIXELSX As Long = 88
Private Type BITMAP
bmType As Long
bmWidth As Long
bmHeight As Long
bmWidthBytes As Long
bmPlanes As Integer
bmBitsPixel As Integer
bmBits As Long
End Type
Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hDC As Long) As Long
Private Declare Function DeleteDC Lib "gdi32" (ByVal hDC As Long) As Long
Private Declare Function GetObject Lib "gdi32" _
Alias "GetObjectA" _
(ByVal hObject As Long, _
ByVal nCount As Long, _
ByRef lpObject As Any) As Long
Private Declare Function SelectObject Lib "gdi32" _
(ByVal hDC As Long, _
ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Private Declare Function LoadImage Lib "user32" Alias "LoadImageA" (ByVal hInst As Long, ByVal lpsz As String, ByVal un1 As Long, ByVal n1 As Long, ByVal n2 As Long, ByVal un2 As Long) As Long
'★
Private Declare Function GetPixel Lib "gdi32" (ByVal hDC As Long, ByVal x As Long, ByVal y As Long) As Long
Private Sub CommandButton1_Click()
Const FILE_ORIGINAL As String = "C:\Documents and Settings\Miyashita.Co,\デスクトップ\分析\画像を数値に変換\test\test.bmp"
Dim hDC As Long
Dim hBmp As Long
Dim hOrgBmp As Long
Dim hOrgFont As Long
Dim hPalette As Long
Dim hImg As Long
Dim tBitmap As BITMAP
Dim Pic As stdole.IPictureDisp
Dim Ratio As Single
Dim i, j, cnt
Dim BB, GG, RR
Dim BBh, GGh, RRh
Dim strBGR
Dim strBGRLen
'----------
On Error Resume Next
With Me.Image1
For j = 1 To 200 Step 1 '縦方向
For i = 1 To 160 Step 1 '横方向
strBGR = (Hex(GetPixel(hDC, i, j))) 'ピクセル取得
strBGRLen = Len(strBGR) '文字列の長さを取得
'0の数が足りない場合、補う(6桁になるように左に0を追加)
If strBGRLen < 6 Then
For cnt = 1 To 6 - strBGRLen Step 1 '6 - strBGRLen回繰り返す
strBGR = "0" & strBGR '左に0を追加
Next cnt
End If
Private Sub CommandButton1_Click()
Dim rc As Long, myfolder As String
With Application.FileDialog(msoFileDialogFolderPicker)
.AllowMultiSelect = False
rc = .Show
If rc = -1 Then
myfolder = .SelectedItems.Item(1)
ChDrive Left(myfolder, 1)
ChDir myfolder
MsgBox CurDir
End If
End With