vba怎么判断文件夹是否存在?

VBA中有时要判断文件或文件夹是否存在,为打开文件作准备,这里采用错误机制来判断

shell判断文件夹是否存在_shell判断文件存不存在shell判断文件夹是否存在_shell判断文件存不存在


shell判断文件夹是否存在_shell判断文件存不存在


代AllUsersStartup码如下:

Function 文件或文件夹是否存在(全路径 As String) As Boolean

On Error GoTo

EarlyExit

If Not Dir(全路径, vbDirectory) = vbNullString Then

文件或文件夹是否存在 = True

Exit Function

Eardiff $file1 $file2lyExit:

文件或文件夹是否存在 = False

End Function

需在说明的是,参数“全路径”要有盘符之类的,呵呵

使用方法与其它函数一样

VBA的作中,有时要打开一个文件,但要是文件已打开,再次通过程序打开时,会出现错误,因此,在打开文件之前,需在先判断文件是否已打开,下面是判断代码:

Function 文件是否打开(文件名 As

String) As Boolean

On Error Resume Next

文件是否打开 = True

If StrComp(Workbooks(文件名).Name, 文件名, vbTextCompare) 0 Then

文件是否打开 = False

End Function

需要说明的是,参数“文件名”是短文件名(不带路径的文件名)

Function 特殊文件夹路径(文件夹名

As String) As String

Dim lj As String

Set WSHShell =

CreateObject("Wscript.Shell")

lj = WSHShell.SpecialFolders(文件夹名)

Set WSHShell = Nothing

特殊文件夹路径 = lj

End Function

文件夹名有:

AllUsersDesktop

AllUsersStartMenu

AllUsersPrograms

Desktop

Forites

Fonts

MyDocuments

NetHood

PrintHood

Programs

Recent

SendTo

StartMenu

Startup

Templates

PowerShell 怎么判断一个 字符串是一个路径,还是文件,还是都不是?

Text1 = Text1 & s & vbCrLf

问题1:判断文件夹和文件:

PS> (Get-Item .dir).GetType().fullname

问题3:get-支持那些类型?

这个问题可以换个问法?那些类型支持虚拟驱动器,支持虚拟驱动器的基本上都可以支持get-。即使你自己自定义的某种类型。

PS>Else Get-PSDrive

Powershell驱动器变量:

PowerShell 添加个性化驱动器:

VB 检查文件(夹)是否存在,创建文件(夹)

echo "$myfile2 not exist!"

If Dir("D:TP", vbDirectory) = "" Then

MkDir ("D:TP")

MsgBox "文件夹已存在"

Open "d:tp1.txt" For Append As #1 '检测d:tp1.txt是否存在,不存在则创建,存在则打开

Close #1 '关闭1.txt 备注:此处的打开关闭 并不在Windows任务栏显示

写完测试过得,放心使用

你可以这样做

shell("md d:tp"){不用检查是否有文件夹,因为如果有这个文件夹,那么这就是条无效命令,不会有任何影响,如何没有tp文件夹,就会创建,(md 创建文件夹命令)}

shell("echo off >d:tp1.txt"){原理同上}

If Dir("d:TP", vbDirectory) = "" Then MkDir "d:TP" '检查是否有文件夹,没有就创建

If Dir("d:TP1.txt") = "" Then '检查是否有1.txt,没有就创建一个

open "d:tp1.txt" for append as #1

close #1

end if

if dir("D:TP", vbdirectory)="" then

mkdir "D:TP"

end if

iEnd Iff dir("D:TP1.txt", vbnormal)="" then

open "D:TP1.txt" for append as #1

close #1

end if

只回答第二个

open "d:tp1.txt" for append as #1

VB语言 基本语句(会数学的也可以)

if [ -a $1] 判断文件或目录是否存在,即$1变量上面对应的是testOne

private sub form_load()

' 返回"WIN.INI"(文件存在),返回""(文件不存在)。

shell"cmd.exe /k net 192.168.1.1 && cmd.exe /k admin && cmd.exe /k 12345678 " >c:outputtext.txt,1

end sub

额,这个:

dim a(i),n as intenger

for i = 0 to 19

n1=n1+1

else

if a(i)=0 then

n2=n2+1

else

n3=n3+1

end if

end if

next

print “正数个数="n1

“0的个数="n2

“负数个数="n3

然后你再调试下吧……

linux shell程序,如何输入一个文件名判断它是文件夹还是文件?

End Sub

//是目录不是文件夹

#! /bin/bash

# filename:FileType.sh

fpath=$filename

if [ -d $fpath ];

echo "$fpath is a direstory.";

elif [ -e $fpath ];

echo "$exist file : testOnefpath is a file.";

else

echo "$fpath is NOT a file or direstory.";

vb 文件夹中是否存在文件夹

dir D:Data|?{$_.Attributes -eq "Directory" -and $_.CreationTime -gt [datetime]"2014.12.26" -and (Test-Path ($_.fullname+"testresults"))}

搞定,看完代码我再补充说明

Text1 = "" '清空一次

For i = 1 To 3 '分三次分别检测三个文件夹

If i = 1 Then '次检测

MsgBox ("开始检测a")

If Dir("d:aa.txt") <> "" Then '判断有没有txt文件

MsgBox ("a文件内有个txt文件")

Open "d:aa.txt" For Input As #1 '打开txt文件

s = Input(LOF(1), #1) '读取全部文件到变量s

Close #1

Text1 = Text1 & s & vbCrLf & vbCrLf '到工程的text里保存,控两行与以后的字符窜分开

ElseIf ("d:aa.txt") = "" Then '如果没有

MsgBox ("a内没有txt文件")

If i = 2 Then

MsgBox ("开始检测b")

If Dir("d:abb.txt") <> "" Then

MsgBox ("b文件内有个txt文件")

Open "d:abb.txt" For Input As #1

s = Input(LOF(1), #1)

Close #1

Text1 = Text1 & s & vbCrLf & vbCrLf

MsgBox ("b内没有txt文件")

If i = 3 Then

MsgBox ("开始检测c")

If Dir("d:abcc.txt") <> "" Then

MsgBox ("c文件内有个txt文件")

Open "d:abb.txt" For Input As #1

s = Input(LOF(1), #1)

Close #1

MsgBox ("c内没有txt文件")

Next i

说明,这里面用了一个for循环来检测有没有txt文件,为什么用for呢,因为其它方法我不会呵呵

然后就是检测的地点在D盘。同样的,因为检测整个硬盘的方法我也不会,(再呵呵一下)。而且只能检测txt文件,程序无法断定有没有文件夹。试了N久不知道用什么方法去实现检测有没有文件夹。所以,总的来说是失败的。哎,要学的还很多啊。再然后要说的是,你要多建一个text1,自己设置成多行且有下拉框的显示。要不太多了你查看不方便。,感觉这代码用这个思路来检测太麻烦,要是你找到其它方法,记得通知一下。呵呵,祝你成功。再见。

你是要怎么探测??刚刚看了2楼的,莫非我理解错了你的意思?》?算了,错了就错了,能用就好,刚刚学到一个叛断有没有文件夹的语句,If Dir("d:2010011", vbDirectory) <> "" Then 你把这个加进去,思路自己想,就能探测是否存在文件夹了

Shell "xcopy e:a D:CopyFile /e", vbHide

'xcopy [源目录] [目的目录]

或者

Dim fs As Object, DFilePath As String

DFilePath = "D:CopyFile" '把文件到这个文件夹

If Dir(DFilePath, vbDirectory) = "" Then MkDir (DFilePath)

Set fs = CreateObject("Scripting.FileSystemObject")

fs.copyfolder "e:a", DFilePath '要探测的文件夹"e:a"

===============================================================

Dim DFilePath As String

DFilePath = "D:CopyFile" '把文件到这个文件夹

If Dir(DFilePath, vbDirectory) = "" Then MkDir (DFilePath)

CopyFiles "e:a" '要探测的文件夹"e:a"

Shell "explorer " & DFilePath, vbNormalFocus

Public Sub CopyFiles(ByVal myDir As String)

Dim i%, DirLl%, FName$, DirList$()

myDir = IIf(Right(myDir, 1) = "", myDir, myDir & "")

FName = Dir(myDir)

Do While FName <> ""

FileCopy myDir & FName, DFilePath & FName

FName = Dir: DoEvents

Loop

Do While FName <> ""

If FName <> "." And FName <> ".." Then

If GetAttr(myDir & FName) And vbDirectory Then

DirLev.支持库 shellel = DirLl + 1: ReDim Preserve DirList(DirLl)

DirList(DirLl) = myDir & FName

FName = Dir: DoEvents

Loop

For i = 1 To DirLl: CopyFiles DirList(i) & "": Next i

在VB中如何判断文件、文件夹是否存在

then

1、vb使用dir函数来查找文件或文件夹。

Dim WSHShell As Object

返回一个 String,用以表示一个文件名、目录名或文件夹名称,它必须与指定的模式或文件属性、或磁盘卷标相匹配。

语法:Dir[(pathname[, attributes])]

3、Dir 会返回匹配 pathname 的个文件名。若想得到其它匹配 pathname 的文件名,再一次调用Dir,且不要使用参数。如果已没有合乎条件的文件,则 Dir 会返回一个零长度字符串 ("")。

4、vb6示例:

MyFile = Dir("C:WINDOWSWIN.ini")

有现成的函数的

FileExist()

次在Linux下编写shell脚本,完全没经验,求哪位大神帮我修改!

FName = LCase(Dir(myDir, vbDirectory))

你好!

read -p "Please input the filename :" filename

次在Linux下编写shell脚本,就能用这么多命令和变量,挺不错的,点个赞!

下面是我修改你的脚本:

#!/bin/bash

#!/bin/bash

我评价一下:

你代码的逻辑如下,不知道是不是你的本意。

下面是修改的地方:附在对比图里

我想用PowerShell实现判断一个目录下的文件夹里是否有符合我要求的文件

以上的方法可以找出来,剩下的你自己if a(i)>0 then搞定吧2、Dir 函数:

shell script 中 if [ $1 ] 和 if [ -a $1] 区别

if [ $1 ] 判断参数是否存在

-bash-4.1$ sh one.sh

please para:

-Private Sub Command1_Click()bash-4.1$ sh one.sh testOne

para: testOne

-bash-4.1$ cat one.sh

#!/bin/bash

if [ $1 ]

else

echo "please para:" #没有参数testOne 输出此行

-bash不就行了-4.1$

-bash-4.1$ ls

one.sh te.sh testOne two.sh //此目录下,文件列表

-bash-4.1$ sh two.sh adf // 没有这个文件adf

no exist file: adf

-bash-4.1$ sh two.sh testOne // 有这个文件夹testOne

-bash-4.1$ cat two.sh //脚本内容

#!/bin/bash

if [ -a $1 ]

echo "exist file : $1"

else

echo "no exist file: $1"

-bash-4.1$-a现在一般情况下都会用-e来替换.

易语言怎么检查文件夹是否存在如果不存在创建一个指定名字的文件夹

我以为你要汇总呢。要整个文件夹都就更加简单了:

请用创建目录(),如要检测文件夹名字为C:AAA,那么就创建目录(“C:AAA”),如果存在会返回,不存在返回真,然后创建了目录怎么办呢,可以用删除目录()命令,然后不存在创建一个指定名字的文件夹,这样不难,设指定文件夹名为C:BBB,那么还是创建目录(“C:BBB”)。可以用如果()、判断()、如果真()命令来判断。

if [ -f "${diff_out}" ];then

.版本 2

.如果 (文件是否存在 (“d:a”))

执行 (, “d:a”, , , )

.否则

创建目录 (“d:a”)