• ベストアンサー

ドライブレターとは?パスの文字数とは?

C:\Documents and Settings\user\My Documents\Excel\file.xls というファイル名があった場合、 ドライブレターというのは「C:」のことでしょうか? また、このパスの文字列を数える場合、 「C:」は抜いて数えるのでしょうか? 「\」も一文字として数えるのでしょうか? どうも初心者ですみませんがどなたか教えてください。

  • subri
  • お礼率75% (37/49)

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.4

#2補足>「C」だけがドライブレターなのでしょうか?それとも「C:」なのでしょうか? どっちでもいいです。 例えば、FileSystemObject.GetDriveでのドライブ指定は、 「C」でも「C:」でもいいです。 要求される処によって変えればいいと思います。 例えば、 何かの作業をしていて、現在のドライブは?と誰かに聞かれたら Cと答えますよねC:と答える人は少ないと思います。 また、コマンドプロンプトで、ドライブを変更するのに、 「C」とか入力しても受け付けて貰えません。 この場合「c:」と入力する必要があります。

subri
質問者

お礼

わかりました。

その他の回答 (3)

  • yan2014
  • ベストアンサー率39% (414/1046)
回答No.3

>ドライブレターというのは「C:」のことでしょうか? その通りですが、ドライブレターとはドライブに付けられたアルファベット名と解釈した方が分かり易いでしょう。 通常,OSがインストールされているドライブのドライブレターは「C」といった具合に。 >このパスの文字列を数える場合、 >「C:」は抜いて数えるのでしょうか? >「\」も一文字として数えるのでしょうか? 「C」も含めキー入力する場合のキーを押した数です。 C:\で三文字です。

subri
質問者

お礼

なんとなくわかったような気がしました。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

>ドライブレターというのは「C:」のことでしょうか? それで良いと思います。単に「C」をドライブレターと言う場合もあります。 >パスの文字列を数える場合、 「C:」も含めます。 「\」も1字として数えます。

subri
質問者

補足

「C」だけがドライブレターなのでしょうか?それとも「C:」なのでしょうか?

  • raphel_7
  • ベストアンサー率34% (86/252)
回答No.1

ドライブレーターはC:とかD:ドライブ文字列のことです。 ドライブレーター=ドライブ文字列と考えてください。 パスの話ですが、 フルパスの場合ドライブ文字列も含みます。 また、Windowsの場合、パスの中に空白などの特殊文字がある場合"(ダブルコーテーション)で囲むのでこの場合、58+2の60文字ではないでしょうか。

subri
質問者

お礼

ドライブレターには「:」も含むのですね。 空白文字列については初めて聞きました。

関連するQ&A

  • Windows HDドライブのパーテーション

    元々、Cドライブしか存在しないパソコンで、コマンドプロント(SUBST)を用いて、Dライブを仮想的に作成しましたが、Dドライブのパスが2つできてしまいました。 1「D:\」 2「C:\Documents and Settings\user\My Documents\D\」 あるプログラムで、「C:\Documents and Settings\user\My Documents\D\」にアクセスして欲しいのに「D:\」にアクセスしてしまい困っています。 2つできたDドライブを、「C:\Documents and Settings\user\My Documents\D\」統一するにはどうすればいいのでしょうか?

  • C++での文字列の挿入。置き換え方法

    C++で 別ファイルから読み込んだ文字列をファイルパスとして使用したいのですが、この時\を\\に置き換えないと認識してもらえないですよね。 例:読み込んだ文字列 C:\Documents and Settings\user\My Documents\a.text これをC:\\Documents and Settings\\user\\My Documents\\a.text というように変換したいのです。 読み込んだ文字列中に\を見つけたら\\に置き換える。もしくは\をもうひとつ挿入・・・といったコードを書けばよいと思うのですが、こちらの方法が良く思いつきません。うまくできるようなアドバイスをいただける方がいましたらどうかよろしくお願いします。

  • 統合マクロでパスの取得方法

    お世話になります。 集計ファイルでエリア・商品で集計をとっています。 一つのファイルにまとめたいのでエリアをシート名による串刺し 商品を統合を使って集計していますが 毎回統合ボタンを押すのが大変で マクロを使い下記のコードを使っていますがファイルのパスで固定されているので 人に渡すとファイル名の変更、ユーザーの違いによりエラーになってしまいます。 現在開いているファイルの名前とパスをマクロに取り込み統合させる事は可能でしょうか Sub Macro1() ' ' Macro1 Macro ' マクロ記録日 : 2009/9/29 ユーザー名 : user ' ' Sheets("一般A").Select Range("b6").Select Selection.Consolidate Sources:=Array( _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]〇〇一般A'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]□□一般A'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]△△一般A'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]××一般A'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]●●一般A'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]■■一般A'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]▲▲一般A'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]++一般A'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]※※一般A'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]%%一般A'!R6C2:R64C9"), _ Function:=xlSum, TopRow:=False, LeftColumn:=False, CreateLinks:=False Sheets("一般B").Select Range("b6").Select Selection.Consolidate Sources:=Array( _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]〇〇一般B'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]□□一般B'!R6C2:R64C9", _ "'C:\Documents and Settings\user\デスクトップ\[8期資料.xls]△△一般B'!R6C2:R64C9", _ ・ ・ ・ ・ End Sub DIMとかActiveWorkbook.Pathとか組み込みましたが うまく行かないです。 どうぞ助けてください。

  • フォルダ名とパス名の違うフォルダの作り方

     例えば、C:\Documents and Settings\<ユーザー名>\My Documents\My Pictures の場合、一番最後のサブフォルダ名が、[My Pictures] とパス名と同様に適用されます。  これを上記の場合、[マイ ピクチャ] になります。  こんな感じに、フォルダ名とパス名の違うフォルダの作り方を教えて下さい。

  • DOSコマンドで相対パスの取得の方法がわかりません。

    ファイルパスが C:\Documents and Settings\ユーザー名\My Documents\My Music を My Music だけを取り出す方法が見つかりません。 どのように操作したら相対パスを取得することができるのでしょうか?

  • 秀丸マクロで、一部文字列を変換後クリップボードコピーしたい

    秀丸マクロで、一部文字列を変換後クリップボードコピーしたい 秀丸マクロで、setclipboard filename;とすると、 現在開いているファイルのフルパスを取得してクリップボードにコピーすることができますが、 この際に\を/に変換して、クリップボードコピーしたいと思いますがうまくいきません。 どうすればよいのでしょうか。。 例) filenameで取得した c:\documents and settings\user\my documents\sample.txt というパスを c:/documents and settings/user/my documents/sample.txt のようにしてから、クリップボードコピーしたい。 意味不明でしたら加筆修正しますのでよろしくお願いします。

  • Excel 相対パス

    Excelでvlookup関数を使っていますが 参照範囲が別ファイルです。 参照先が絶対パスになってしまいますが これでは他人にこのファイルを提供した場合つかえません。 そこで相対パスにしたいのですができません。 どうしたら良いのでしょうか? =VLOOKUP(C2,'C:\Documents and Settings\user1\管理\[20130000.xls]Sheet1'!$D$6:$E$634,2,FALSE) これを =VLOOKUP(C2,'./[20130000.xls]Sheet1'!$D$6:$E$634,2,FALSE) にしたい。

  • Windows漢字フォルダ名を'\'でsplitする方法

    たとえば、 $fullfn = 'C:\Documents and Settings\user\My Documents\記録一覧表.xls'; というようなフルパスファイル名をフォルダ名とファイル名に分割したいのですが、 $dat =~ /^(.*)\\(.*)$/;  #$1は最長マッチングのはず $path = $1; $fn = $2; のような方法で行おうとすると、 上記例のように、文字コードに'\'を含むような漢字(「表」など)がある場合には、上手く分割できません。 path=C:\Documents and Settings\user\My Documents\記録一覧・ fn=.xls のようになってしまいます。 これを上手く行う方法はないでしょうか。よろしくお願いします。 ・Win-2000でActive-Perlを使っています。 This is perl, v5.8.7 built for MSWin32-x86-multi-thread (with 7 registered patches, see perl -V for more detail)

    • ベストアンサー
    • Perl
  • VBAマクロ、パスがありませんでとまります。

    Excel2003 VBAのコードを作成して、 実行しましたら ”実行時エラー'76' パスが見つかりません。" と表示されて Open pase ...... の行でとまってしまいます。 なにが原因とかんがえられますか? すいませんが、ご回答よろしくおねがいいたしますm(_ _)m Sub Macro1() Dim strarray() As Variant Dim counter As Integer Dim i As Long pase="C:\Documents and Settings\user\My Documents\" myname=Dir("C:\Documents and Settings\user\My Documents\",vbNormal) Do While myname <> "" If (GetAttr("C:\Documents and Settings\user\My Documents\" &_ myname) And vbNormal) = vbNormal Then ReDim Preserve strarry(counter+1) strarray(counter) = myname counter = counter + 1 End If myname = Dir Loop For i = 1 to counter Open pase & strarray(i) For Input As #1 Do Until EOF(1) ・ '処理 ・ ・ Loop Next i

  • My Documentsのパスを変更したい

     My Documentsのパスは、標準で 「C:\Documents and Settings\Administrator\My Documents」 になっているのですが、VB.netを使ってプログラムから変更する方法を教えてください。 よろしくお願いいたします。