シート名を抽出するには?

解決


チビネロ  2005-06-11 00:49:42  No: 122444

ファイル名とシート名を他のファイルに明記するにはどうすればいいですか?


特攻隊長まるるう  2005-06-11 01:17:38  No: 122445

なんか同じ人っぽい文章だけど…さすがにここまで文章として成立してない
言葉になってくると理解するのむずぃなぁ(  _)_
中学校くらいで5W1Hとか習ったと思うんだけど、他人に何かを伝えたい時は
それを伝えて下さい。

で、
>ファイル名とシート名を他のファイルに明記するにはどうすればいいですか?
プログラムはどこから実行?エクセルVBAでいいのかなぁ?。
どこのファイル?特定のフォルダ?場所は決まってるの?
その辺りが決まってるなら、
ファイル(エクセルBook?)を開いて、シートコレクションをループで回して
それぞれのシートの .Name プロパティでシート名が取れるので好きなセルに
貼り付けて下さい。


お手上げ  2005-06-11 01:27:38  No: 122446

質問の仕方がプログラムを組めるレベルには達していないですね?
その状況でのプログラミングは、いくら初心者にしても壁が高いですよ。

代替案
  1.エクスプローラでファイルを選択して名前の変更をできる状態で
      ファイル名をコピー。それをテキスト(メモ帳など)で新規ファイルを
      開いて貼り付け。
        →この状態でテキストファイルにファイル名が張り付いている。

  2.エクスプローラで選択しているファイルをダブルクリックで起動。
      シート名を変更できる状態にしてコピー。
      さきほどのテキストに貼り付ける。(全シート繰り返す)

  上記1.2.を必要なだけ繰り返す。

をやってみてください。

※  これは荒しではありません。これを行うことによりプログラムを組む
    条件が見えてくると思います。

それを踏まえて、新規テキストファイルを作成するのはどうするか?とか
エクセルのオープンはできたけど、シート名はこうやって取得しようとしたら
こんなエラーが帰ってきた  と言う状態になってから再度質問してください。


チビネロ  2005-06-11 01:39:14  No: 122447

特攻さんありがとうございます。
そして申し訳ございませんm(__)mエクセルVBAです。
例えば任意のエクセルファイルでそのシートが3つあったとします。
マクロを動かすとそのエクセルのファイル名やその3つのシート名が
他のエクセルファイルに表となって出るものが作りたいのです。
ループの構文はどんなのがあるのでしょうか?


チビネロ  2005-06-11 01:43:29  No: 122448

お手上げさん、ご指導ありがとうございます。
早速やってみます。またエラーなど出ると思いますので
そのときは宜しくお願い致します。


ガッ  2005-06-11 01:43:34  No: 122449

( ´Д`)<技術系の掲示板は技術を提供する場であって、勉強する場を提供する所じゃないと思われ。

とりあえず、
http://www.amazon.co.jp/exec/obidos/search-handle-form/249-2173280-6920348
http://www.google.co.jp/search?hl=ja&q=%E5%88%9D%E5%BF%83%E8%80%85+VBA&lr=

で、ループ構文は
Do-Loopとか、For-Nextとか。
使い方は人に訊くと恥ずかしいぞー(ニヤ


ガッ  2005-06-11 01:44:47  No: 122450

amazonの検索リンク…駄目みたい>(´・ω・`)ゴメ…


チビネロ  2005-06-11 01:50:49  No: 122451

ガッさんすみません!ありがとうございます。
参考に致します。


特攻隊長まるるう  2005-06-11 02:15:04  No: 122452

まぁ、今日は機嫌が良いのでソースが提供されたりしますがw。
ボクからすんなりソースだけがもらえる場合、プログラマとしての
将来に見込みなし…と判断されている場合も多いので気をつけ
ましょう♪。
[エクセルVBA]
Sub Macro1()
    Dim wBook As Excel.Workbook
    Dim i As Integer
    Set wBook = Application.Workbooks.Add
    With wBook.Worksheets(1)
        .Range("A1").Value = ThisWorkbook.Name
        For i = 1 To ThisWorkbook.Worksheets.Count
            .Cells(i, 2).Value = ThisWorkbook.Worksheets(i).Name
        Next
    End With
End Sub


チビネロ  2005-06-13 19:41:33  No: 122453

特攻さん、本当にありがとうございます。
しかし特攻さんの見込みに背くように頑張っていきます。


特攻隊長まるるう  2005-06-13 22:34:28  No: 122454

その意気だぁ〜がんばれぇ(>▽<)ノシ☆!ぴしぴしっ


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加