パスの最後の¥以降を取るマクロ

体温より高い気温が続くと、35度超えなきゃ何とかなると思えてくるのにびっくりです。

エクスプローラーで検索した結果をEXCELにしたいと言われて

結果を全て選択して、シフトキーを押しながら右クリックして、

「パスをコピー」をクリックして、EXCELに貼り付けと

実際にやりながらコピペの仕方を教えたのですが、パスが長すぎ

そこで、パスの最後のフォルダ名又はファイル名を取るマクロを作成しました。

パスを貼り付けるのをB列にしておいて、

A列にパスの最後のフォルダ名又はファイル名を表示する感じです。

ここから下がコードです。

Option Explicit

Sub 右側最後の円マーク以降の文字を取る()

'2018-08-08作成 WINDOWS7 EXCEL2010

'このマクロはエクスプローラーで検索した結果のパスの一番右側の¥マーク以降の文字列を取得するマクロです。

'準備

'検索結果をEXCELにコピペするには、検索結果をCTRLキーとAのキーを同時に押して全部選択しておいて

'SIFTキーを押しながら右クリックして、パスとしてコピーをクリックして、B2を選択して貼り付けてください。

'このマクロを実行してください。

'セルA2から下方向にパス名の一番右側の文字列が表示されます。

Dim Cnt As Long

Dim CntMax As Long 'B列最終行を取る

Dim Atai As String

Dim AtaiS As Integer '文字列の右側から最初に来る\の位置を取る(文字列の左側から数えて何番目か)

Dim AtaiLen As Integer

Dim AtaiR As String

Cnt = 2

CntMax = Cells(Rows.Count, 2).End(xlUp).Row

For Cnt = 2 To CntMax Step 1

Atai = Cells(Cnt, 2).Value

AtaiLen = Len(Atai)

AtaiS = InStrRev(Atai, "\")

AtaiR = Mid(Atai, AtaiS + 1, AtaiLen - AtaiS)

Cells(Cnt, 1).Value = AtaiR

Next

End Sub

自己責任で使ってください。