|
▼スプーン さん:
>初歩的な事かもしれませんがお願いします。
>数量などを別ファイルから参照してるのですが
>例えば
>=[在庫表.xls]sheet1!A1
>
>その別ファイルで非表示されてる行を
>参照してる側のファイルでも
>非表示にしたいのです。
>
>VBAでなくエクセルの機能でできそうな気もしますが
>色々検索などしてもどうしてもわからなかったので
>こちらで質問させて頂きます。
2003の事は解りませんが、こういった遠隔操作機能の事は、今まで聞いた事は無いです。
2003でも、このような機能は多分無いと思います。
無いと言う前提で話しますが、
マクロでやると、初歩レベルでできると思えないです。
まず、非表示になっている行ないし列がどこかを調べ、行または列のセルを総当りでリンク関数が入っているか1個1
個確認し、セルに書かれている参照関数からブック名やシート名等を抜き出し、それを元にやりたい事を実行してい
くといった作業になると思います。
また、リンク先のブックが、開かれている状態なのか、閉じているかでもコードの書き方が変わってきます。
リンク先のブック名は、これでも取れるのでこれを元にリンク関数が書かれているセルをFing等で探したほうが早く
すみますが....。
Sub リンク先ブック名取得() '関数の場合
LinkBookTB = ActiveWorkbook.LinkSources(Type:=xlLinkTypeExcelLinks)
If Not IsEmpty(LinkBookTB) Then
For i = 1 To UBound(LinkBookTB)
MsgBox "リンク " & i & ":" & Chr(13) & LinkBookTB(i)
Next i
End If
End Sub
なんか、色々御託並べちゃったけど、
非表示の列、行から「[」が含まれているセルの値を別ブックや別シートに抜き出してから、そのセルの値をブック名、シート名、列や行番号を抜き出してから、それを元に手作業でやったほうが良いと思いますけど...。
(参照ブックを非表示にする手間だけ手作業にしただけで、最初に書いた内容とほとんど同じですね。すみません。)
|
|