|
JAKA様、UO3様
この度は御教示ありがとうございます。
お二方のアドバイスを参考に下記トライしましたが、うまくいきませんでした。
大変恐縮ですが、再度、御教示頂けませんでしょうか。
1."B5”のセルは、ダブルクリックしたらレ点が入るようにしてあります。
2.お二人のアドバイスに基づき、TRUEをワークシート関数で入れる"C5"セルは無視することにして、"レ点があれば、セル"D5"に記載のファイルを開ける。
ようにしたいです。
どうしても、
myfilename = Selection.Offset(0, 2).Value
において、myfilename にうまく、ファイルの名前が格納されないようです。
なお、フルパスですが、myfilename の部分に直接D5のファイル名を記載してみたところ、ファイルは開いたので、パスに間違いはないと思っています。
ちなみに、"D5"セルには、"請求書●●株式会社.xls"とインプットしてあります。
*********************************
Sub 月額定額請求書()
Dim myfilename As String 'ファイル名は文字列
Range("B5").Select
If Selection.Value = "レ" Then
myfilename = Selection.Offset(0, 2).Value
Workbooks.Open Filename:="C:\Documents and Settings\Administrator\My Documents\引継\月額請求書マクロ\myfilename"
End If
End Sub
********************************************
>▼UO3 さん:
>
>ありがとうございます。
>
>JAKAさんからも御指摘頂いていただきましたが、やはりフルパスでなければだめなのですね。
>
>実は、昨日ひょんなことからフルパスいれずに試したら目的のファイルが開いたので、大丈夫なのかも?と思っておりました。その後、PCがたまたまフリーズして、保存できないまま、再度同じことを記載した(つもり)ら出来なかったので、
>何がおかしいのだろうと、悩んでおった次第です。
>
>パス名入れて頑張ってみます。
>
>>アップされたコードは、C5 固定ですね。実際には違うコードで処理しているのですか?
>
>本当のエクセルシート上でも、C5が開きたいリストの一番上の行でして、固定させます。実際もこのままのコードを使うつもりです。
>
>また、C5を扱うにしても わざわざ Select とやって ActiveCell で受ける方式は感心しませんね。
>
>ありがとうございます。勉強になります。
>
>
>>▼かわかみまめお さん:
>>
>>こんにちは
>>
>>D列に記載されているブック名は、もちろん【ブックのフルパス】ですよね。
>>これが、仮にブック名だけ(Book1.xls 等)なら、だめですから。
>>
>>それと、レ を記入して識別しようとしておられるのですから
>>"True" との比較ではだめですよね。 "レ" との比較をどうぞ。
>>
>>それはそれとして、D5から下にファイル名が記載されているということですが
>>(つまり "レ" は C5以降に必要なだけ記載されている)
>>アップされたコードは、C5 固定ですね。実際には違うコードで処理しているのですか?
>>
>>また、C5を扱うにしても わざわざ Select とやって ActiveCell で受ける方式は
>>感心しませんね。
|
|