人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

お気持ちのみですが完成したら合計で300p差し上げます。
次の簡単なエクセルのマクロを作ってください。


1)A列に"filename001.pdf"などの、ファイルの名前が連続して書いてある。
2)エクセルの保存されているフォルダにそのファイルがあれば、B列に○を、なければ×を記入する。
3)終了条件=A列に空白セル発見。


よろしくお願いします。

●質問者: ReoReo7
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:PDF エクセル セル ファイル フォルダ
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● きゃづみぃ
●1ポイント
Sub Macro1()
'
' Macro1 Macro
'
Dim a As Long
Dim b As String

For a = 1 To 65536
 If Range("A" & a) = "" Then End
 
 b = Range("A" & a)
 If Dir(b) <> "" Then Range("B" & a) = "○"
Next a
 
End Sub

2 ● きゃづみぃ
●180ポイント

Sub Macro1()

'

' Macro1 Macro

'

Dim a As Long

Dim b As String

For a = 1 To 65536

If Range("A" & a) = "" Then End

b = Range("A" & a)

If Dir(b) <> "" Then Range("B" & a) = "○"

Next a

End Sub

◎質問者からの返答

いつもありがとうございます。


3 ● SALINGER
●60ポイント

せっかくだから、FileSystemObjectを使った例

Sub fileExist()
 Dim fso As Object
 Set fso = CreateObject("Scripting.FileSystemObject")
 Dim i As Long
 i = 1
 While Cells(i, 1).Value <> ""
 If fso.FileExists(CurDir & "\" & Cells(i, 1).Value) Then
 Cells(i, 2).Value = "○"
 Else
 Cells(i, 2).Value = "×"
 End If
 i = i + 1
 Wend
End Sub

\を半角¥にしてください

◎質問者からの返答

どうもありがとうございます。

了解です。


4 ● freemann
●60ポイント

ちょっと別バージョン。ワークブックのパスを取得して、ほかのフォルダを参照することがないように確実にしてあります。

---------------------------------------------------

Dim a As String

Dim path As String

Dim i As Long

path = ThisWorkbook.path

i = 1

With Worksheets(1)

Do

a = Dir(path & "\" & .Cells(i, 1))

If a <> "" Then

.Cells(i, 2) = "o"

Else

.Cells(i, 2) = "x"

End If

i = i + 1

If .Cells(i, 1) = "" Then

Exit Do

End If

Loop

End With

◎質問者からの返答

ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ