C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 >>
■43517  Re[3]: C#によるWordの操作
□投稿者/ やじゅ -(2009/11/11(Wed) 21:00:14)
>
    No43483 (初心者 さん) に返信
    > 実はそのものズバリを期待してたんですが・・・w
    >
    > 参考をもとになんとか解決しました。

    出来れば、別の方が同様の質問で困らないように、(そのものズバリを期待)
    解決したコードを掲載して頂けばと思います。
    GIVE & TAKE ってわけではないですが、質問するだけの掲示板で終わらせないように。
記事No.43464 のレス /過去ログ74より / 関連記事表示
削除チェック/

■73169  Re[3]: WebBrowserを使用したエディターでのテキスト選択Ev
□投稿者/ タッチ -(2014/08/25(Mon) 13:26:51)
    魔界の仮面弁士様、いつもありがとうございます。

    ご提示のコードでどのようにイベントが発生するかを確認したいと思います。

    また、WebBrowserのDocument.AttachEventHandlerを調べ、
    また、各種イベントについても調べたいと思います。

    疑問に思っていたことの糸口がつかめそうです。
    本当にありがとうございました。
記事No.73148 のレス / END /過去ログ122より / 関連記事表示
削除チェック/

■94081  Re[18]: VBより今開いてるExcelのファイル名の取得
□投稿者/ 魔界の仮面弁士 -(2020/03/11(Wed) 17:06:58)
    2020/03/11(Wed) 17:08:56 編集(投稿者)

    No94079 (さき さん) に返信
    > ファイル名のみを抽出、

    フルパスからファイル名のみを抽出するには、そのパスを
    System.IO.Path.GetFileNameWithoutExtension メソッドあるいは
    System.IO.Path.GetFileName メソッドに渡してやれば OK です。


    Excel で開いていたファイルが OneDrive 上にあった場合、先のコードにて
    https://d.docs.live.net/〜〜/Example.xlsx』などの文字列が
    列挙される可能性がありますが、この場合においても、
    得られたパスを上記メソッドに引き渡すことで、
    『Example』や『Example.xlsx』といったファイル名を得られます。


    > その内容を別途読み込みもし活用もしたかったのです。

    CSV ファイル等のテキストファイルであれば、
    Excel 本体が無くても読み込めますが、
    Excel のワークブック ファイルの内容を読み取ろうとするのであれば、
    Excel 本体(あるいは同種のライブラリ)を使う必要があるでしょう。


    各セルの値を読みだす方法はいろいろあります。本スレッドの質問内容である
    『VBより今開いてるExcelのファイル名の取得』から外れてしまうことになるので、
    具体的なソースコードの記述は避けますが、たとえば Excel を使ってアクセスするなら、
    Worksheet オブジェクトの Range プロパティや Cells プロパティを通じて読みだせます。

    ClosedXML ライブラリを使うなら、IXLWorksheet の Cells プロパティを使えます。
    EPPlus ライブラリを使う場合は、ExcelWorksheet の Cells プロパティを使えます。
    あるいは ReoGrid のメモリワークブックを通じて読み取ることもできますね。
    https://reogrid.net/jp/document/


    > 開いてるExcelをVBから閉じたいとは、上で抽出もしたそのExcelのことなのです。

    一つの Excel 上で、複数のファイルが開かれていた場合において、
    No94073 の (1)〜(6) のうち、どの動作を望んでいるのでしょうか?


    > 閉じもせず読み込みもしょうとすれば、「System.IO.IOException 別のプロセスで使用されているため・・」とのエラーにもなるからです。

    現在どういう処理を行っているのか分からないので、その点については何とも言えません。

    たとえば Excel で開かれている最中のファイルに対して
      Using stm As New FileStream(excelFilePath, FileMode.Open)
       ' :
       ' :
      End Using
    で読み込もうとした場合は、御指摘のものと同様の
    『System.IO.IOException: '別のプロセスで使用されているため、…'』の例外になると思います。

    しかし、Excel で開いている最中のファイルだったとしても、FileShare.ReadWrite を指定して
      Using stm As New FileStream(excelFilePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
       ' :
       ' :
      End Using
    などとした場合は、System.IO.IOException の例外にはなりませんでした。
    https://dobon.net/vb/dotnet/file/fileshare.html#section4
記事No.94040 のレス /過去ログ163より / 関連記事表示
削除チェック/

■94083  Re[19]: VBより今開いてるExcelのファイル名の取得
□投稿者/ さき -(2020/03/11(Wed) 18:00:24)
    No94081 (魔界の仮面弁士 さん) に返信

    ありがとうございます。

    そのような形でのファイル名のみの抽出もあるのですね。
    一段落すれば試してみます。

    今のところ取り敢えず、ファイル名のみの抽出もしたExcelを閉じれば良いのです。
    原則その一個しか開きませんし、ハンドで閉じても良いことではありますが。
記事No.94040 のレス /過去ログ163より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -