- 締切済み
エクセルVBAによるファイル実行及び貼り付け
フォルダ内にあるファイル(専用ソフトから出力されたファイル、中身はテキスト系、拡張子なしのファイル、エクセルでも読み込み可)を実行して指定したシートに貼り付けをしたいのですがファイルがないといわれてしまいます。 ちなみにまだまだプログラム初心者なものでおかしなことを聞いているかもしれませんが宜しくお願いします。 Sub 上リンク() Dim myCell(1) As String Dim i As Integer, j As Integer Dim データ As Variant データ = Worksheets("入力").Range("H64") 'ワークシート[上型NC]をアクティブにする Worksheets("上型NC").Activate '[C:\*****\***\***]フォルダの「データ」をシーケンシャ入力ルモードで開き、 'ファイル番号を「1」に指定する Open "C:\****\***\***\データ" For Input As #1 'ここでファイルがないというエラーが発生!データはフォルダ内にある任意データ Do Until EOF(1) 'ファイルのデータを変数に格納する Input #1, myCell(1) i = i + 1 For j = 1 To 1 Cells(i, j).Value = myCell(j) Next j Loop 'ファイルを閉じる Close #1 Worksheets("入力").Activate End Sub になりまして”データ”の部分に任意の決まっていないデータがをいれたいのですがデータがないといわれてしまいます。ここではエクセルのシートにデータ名を入力して実行、上型NCシートに貼り付けといった手順をとりたかったのですが。 わかりづらいかもしれませんが宜しくお願いします。 ちなみにデータの部分を実際のファイル名にすれば貼り付けはできますが、そこを任意にするとファイルがないといわれてしまいます。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- hige_082
- ベストアンサー率50% (379/747)
http://qanda.rakuten.ne.jp/qa4989260.html の続きですよね マナー違反になるので、どちらかを締め切りましょう 詳細は「禁止事項」の「■分割質問・締め切らずに関連質問」を読んでね 本題です >Open "C:\****\***\***\データ" For Input As #1 を Open "C:\****\***\***\" & データ For Input As #1 に変更すれば良いと思います 「データ」は変数ですよね 変数を""で括ってしまうとただの文字列になってしまいます 参考までに
お礼
ありがとうございます。 削除したつもりができてなかったようで申し訳なかったです。