ユーザーフォームの使い方で、テキストボックスやコンボボックスのControlSourceを,フォームを開いたのとは別のシートのセルにあてたいんですけど、できますか?
同様に、コンボボックスのRowSourceのリストも、別のシートの値を拾いたいんです。
具体的に言えば、ユーザーフォームを開くのは、常に「Sheet1」であって、入力した内容を表示するのは「Sheet2」なのです。
コンボボックスのリストは本当は、「Sheet3」の値を拾いたいのです。
今はよくわからないので、全部「Sheet1」にリンク(?)させて、値を取得させるようにしてます。
それと、セルの数式の中に別のセルの数値を代入できますか?
例えば、あるセルの数式が「=Sheet2!A4」だとしましょう。
この場合の「Sheet2」の「2」に、例えば、ある別のセルの値を代入して、
「=Sheet3!A4」とかにしたいのです。
つまり「=Sheet”A1”!A4」みたいにして、「A1」のセルの値が
「2」、「3」に変われば元の数式も変わる、みたいに。
同じように、セルの範囲につけた名前や、リンクするファイルの名前も数式の変数に入れられるのでしょうか?
とりあえず、セルの数式の中に、別のセルの値を”文字”や”数値”として入れたいのです。
ちょっと説明がわかりにくいかもしれないけど、教えて下さい。
No.3ベストアンサー
- 回答日時:
●平成13年9月 加工実績表.xlsが開いていれば、A1に半角数値9があるとして、
=INDIRECT("'C:\My Documents\工場用\月間加工実績表\[平成13年"& JIS(A1) &"月 加工実績表.xls]入力用'!$B$129")
で可能です。
●参照するBookが開いていなければ上の式は値を返しません。
マクロ(ユーザー定義関数)もダメでしょう。(マクロで開けば別ですが)
悪あがきとしては、今、セルの算式が『[平成13年8月 加工実績表.xls]』となっていれば、[平成13年8月 加工実績表.xls]をコピーして置き換えのテキストボックスに貼り付けて、
[平成13年8月 加工実績表.xls]
↓
[平成13年9月 加工実績表.xls]
の置き換えを行えば値は変わります。
>欲張って『アクセス』にも手を出そうとしておりますが・・・。
是非やるべきです。この質問のような悩みはうそのようになくなるかもしれません。
前段はご勘弁を。SEさんには働いてもらっています。専門のHPには信じられないような方(ホントの専門家?尊敬できそう)がたくさんいらっしゃいますヨ。では。
No.2
- 回答日時:
後半部分についての別方法を思いつきました。
>それと、セルの数式の中に別のセルの数値を代入できますか?
A1にシート番号を入力するとして、=INDIRECT("Sheet"&A1&"!A4") で指定したシートのA4の値を表示します。
>同じように、セルの範囲につけた名前
単一セルにDATA1、DATA2、DATA3・・・と名前が付いていれば、
A1に範囲名の番号を入力するとして、=INDIRECT("DATA"&A1) で指定した範囲名のセル値を表示します。
複数セル範囲(A1からZ100とか)にTBL1、TBL2、TBL3・・・と範囲名がついていれば、
=INDEX(INDIRECT("TBL"&A1),1,1)
のように使えば、Index関数の参照する範囲を切り替えられます。
>リンクするファイルの名前
内容がよく分からないため何ともいえませんが、ファイルの名前なら文字列の連結で定義できます・・・
="myFileName"&A1&".txt" のような感じです。リンク先は困難かもしれません。
ご参考に。
御礼が遅くなってゴメンナサイ。
ユーザーフォームの件と、セルの数式にセルの値を代入する件、できました。
ありがとうございます!!!
ずうずうしいようですが、もうひとつ。
リンクするファイル名の件ですが、内容を説明しますと、
あるセルの数式が次のような内容だったとします。
='C:\My Documents\工場用\月間加工実績表\[平成13年9月 加工実績表.xls]入力用'!$B$129
この場合の『9月』の『9』部分に、指定したセルの数字を代入したいのです。
『加工実績表』は『月ごと』にブックを作っているので、どうしてもこのような形になってしまいます。
よろしくお願いします。
余談ですが、nishi6さんはナゼそんなにエクセルに詳しいのですか?
SEのようなお仕事をされてるのですか?
ワタクシはエクセルを始めて、約10ヶ月で、最近進歩が止まってしまったような気がします。欲張って『アクセス』にも手を出そうとしておりますが・・・。
No.1
- 回答日時:
テキストボックスのControlSourceがSheet2のA1なら
Sheet2!A1をセット。
または、Sheet2のA1に範囲名を付けて、それをセット。
コンボボックスのRowSourceがSheet3のA1~A10なら
Sheet3!A1:A10をセット。
または、Sheet3のA1:A10に範囲名を付けて、それをセット。
A1の値によって、A2の式が切り替わるようにするには、一案ですが、
=CHOOSE(A1,Sheet1!A4,Sheet2!A4,Sheet3!A4)
のようにすれば値は求められます。回答になっていないかもしれませんね。
または、ユーザー定義関数
Public Function SheetAndRange(Sht As Integer, rg As Range)
SheetAndRange = Worksheets(Sht).Range(rg.Address)
End Function
を標準モジュールに貼り付け、
=SheetAndRange(A1,A4) とすれば値は求められます。
範囲名ですが、これもユーザー定義関数を作れば切替えられます。
例として、Sheet1のA1:C1に範囲名『Total1』、Sheet1のA2:C2を範囲名『Total2』とします。
Public Function TotalChange(num As Integer)
TotalChange = Application.Sum(Range("Total" & num))
End Function
を標準モジュールに貼り付け、
=TotalChange(1) とすればA1:C1の計、=TotalChange(2) とすればA2:C2の計になります。
ご参考に。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 条件に合った数値の合計を表示させたい関数と条件指定の方法 3 2023/05/13 16:07
- Excel(エクセル) Excelにて、行の最後のセルの値をコピーして別sheetに張りつけるVBAコードをご教授願います 3 2022/11/20 14:35
- Excel(エクセル) エクセルの数式について ブック内の別シートの値の含まれたセルの個数を集計したい 全シート一覧のシート 1 2022/07/21 19:28
- Excel(エクセル) VBAにてエクセルをpdf化する方法 1 2023/03/10 16:20
- Excel(エクセル) シート参照を含む数式を連続コピー 3 2022/12/10 11:42
- Excel(エクセル) フォルダ内のエクセルファイルを開かずにデータ採取する関数式 2 2022/12/22 22:15
- Excel(エクセル) エクセルの関数式を教えてください。 2 2022/11/29 21:09
- Excel(エクセル) エクセルの表示形式について教えてください あるセルの「A」という値と、別のセルの「B」という値を組み 4 2023/02/21 21:55
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
数学 Tan(θ)-1/Cos(θ)について...
-
4つのパターンを表示するEXACT...
-
エクセルの数式で教えてください。
-
エクセルで指定した日付、店舗...
-
Excel:一部のフォントでセルの...
-
Excel初心者です。 詳しい方、...
-
Excel初心者です。 詳しい方、...
-
Excel 2019 のピボットテーブル...
-
スマートな関数を教えて下さい。
-
Excelのグラフ軸について
-
EXACT関数とIF関数の組み合わせ...
-
Excel ウインドウ枠の固定をす...
-
エクセルで日付の入ったセルの...
-
excelの不要な行の削除ができな...
-
INDIRECTを使わず excelで複数...
-
各ページの1番上の表示について
-
スプレッドシートの関数VLOOKUP...
-
エクセルでセルに「氏名を入力...
-
関数を教えて下さい。
-
Excelのif関数で文字が見えなく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイル内にある数字の出現回...
-
Excel関数の先頭に「@」が入っ...
-
エクセルの気味悪い不思議
-
Excel VBAで、実行時にsheet上...
-
表示されている人数だけを数え...
-
他人が作ったマクロの理解
-
Excelの関数について質問です。
-
Excel 集計表
-
エクセル 日時の計算式について
-
Excelの関数に関して質問です。...
-
エクセル:セル内の文字列の下...
-
絞り込み検索
-
エクセルの関数で
-
エクセルの書式設定について教...
-
余分なEXCELファイルに印刷され...
-
VBA 同一シート内での転記の仕方
-
長期休みの関数はありますか
-
Excelの空のセル
-
エクセルで入力してある文を別...
-
Excelのマクロで、セルを結合し...
おすすめ情報