Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9177 / 13644 ツリー ←次へ | 前へ→

【28905】シート名をセルに表示させたいのですが・・・ 黒ひげ 05/9/18(日) 1:15 質問[未読]
【28906】Re:シート名をセルに表示させたいのですが... ponpon 05/9/18(日) 2:05 発言[未読]
【28907】Re:シート名をセルに表示させたいのですが... MARBIN 05/9/18(日) 8:07 発言[未読]
【28911】Re:シート名をセルに表示させたいのですが... 黒ひげ 05/9/18(日) 11:39 お礼[未読]
【28917】Re:シート名をセルに表示させたいのですが... MARBIN 05/9/18(日) 12:32 発言[未読]
【28908】Re:シート名をセルに表示させたいのですが... Hiroko 05/9/18(日) 9:05 発言[未読]

【28905】シート名をセルに表示させたいのですが・...
質問  黒ひげ  - 05/9/18(日) 1:15 -

引用なし
パスワード
   シート名に「物価」と入力してした場合、セルA2にも同様に「物価」と表示させたいのですが、どのような式を入力すればいいのでしょうか?

【28906】Re:シート名をセルに表示させたいのです...
発言  ponpon  - 05/9/18(日) 2:05 -

引用なし
パスワード
   こんばんは。
それは、すべてのシートでしょうか?
それとも、シート名が「物価」のような特定の場合だけですか?

特定の場合:

Sub test()
  Dim sh As Worksheet
  For Each sh In Worksheets
   With sh
    If .Name = "物価" Then
      .Range("A2").Value = .Name
    End If
   End With
  Next
End Sub


すべての場合:

Sub test2()
  Dim sh As Worksheet
  For Each sh In Worksheets
   With sh
    'If .Name = "物価" Then
      .Range("A2").Value = .Name
    'End If
   End With
  Next
End Sub

かな?

【28907】Re:シート名をセルに表示させたいのです...
発言  MARBIN  - 05/9/18(日) 8:07 -

引用なし
パスワード
   ワークシート関数での例です。
一度ブックを保存してから出ないとエラーになります。

=REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),)

なお、この式は、
>シート名に「物価」と入力してした場合
に限りません。

【28908】Re:シート名をセルに表示させたいのです...
発言  Hiroko  - 05/9/18(日) 9:05 -

引用なし
パスワード
   ▼黒ひげ さん:
>シート名に「物価」と入力してした場合、セルA2にも同様に「物価」と表示させたいのですが、どのような式を入力すればいいのでしょうか?

シートの目次作成でしょうか?もしそうでしたら、次のようなコードで一度試して
みてください。
シートに「シート目次」「物価」・・・・・の必要な各種シートを制作され、マクロを
動作されると、目次が作られます。

Sub 目次作成()
Dim i As Long
For i = 1 To Worksheets.Count
 If Worksheets(i).Name = "シート目次" Then
  GoTo one
 End If
Next
 Worksheets.Add before:=Worksheets(1)
 ActiveSheet.Name = "シート目次"
one:
 With Worksheets("シート目次")
  For i = 1 To Worksheets.Count
  .Cells(i, 1).Value = Worksheets(i).Name
  Next i
 End With
End Sub

【28911】Re:シート名をセルに表示させたいのです...
お礼  黒ひげ  - 05/9/18(日) 11:39 -

引用なし
パスワード
   ▼MARBIN さん:
>ワークシート関数での例です。
>一度ブックを保存してから出ないとエラーになります。
>
>=REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),)
>
>なお、この式は、
>>シート名に「物価」と入力してした場合
>に限りません。


ありがとうございました。うまくいきました。
ところで、この式の意味がよく分からないのですが、A1というところは
何か意味があるのでしょうか?

【28917】Re:シート名をセルに表示させたいのです...
発言  MARBIN  - 05/9/18(日) 12:32 -

引用なし
パスワード
   セルアドレスの部分はどのセルでもOKです。

要するにセル情報からブック名を消したものを取得してますので。
関数のヘルプも見ましょう。

9177 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free