Excel2000のことですが、
シートの一部分を[Excel(*.xls)]形式で名前を付けて別に保存したいのですが、どのようにしたらいいでしょうか。
HTML形式だとできるのですが、うえの形式だと部分選択できず、どのようにしたらいいかわかりません。
実際、表だけ別のファイルに保存しておこうとかという場面はあると思うのですが。
印刷とかだと、部分印刷はできるのですが。
MOUS試験が2001年2月27日にあるので、それまでにおねがいします!

このQ&Aに関連する最新のQ&A

A 回答 (1件)

>HTML形式だとできるのです


エッ!!知りませんでした。
>うえの形式だと部分選択できず
確かに拡張子をxlsに置き換えても駄目ですね。

ご質問の回答ですがこんな簡単な方法では回答になっていないと思いますが・・・
(1)保存した部分をコピーする。
(2)新規作成で新しいBOOKを開きペーストする。
(3)ファイル名を付けて保存する。
一応HTML形式のファイルをExcel2000で開き部分的に上記を実行して見ましたが
問題ありませんでした。
    • good
    • 0
この回答へのお礼

やっぱりそのように二段階でやるしかないですかね・・
でも、さっそく回答いただきありがとうございました!

お礼日時:2001/02/23 10:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Q複数のtxtの特定部分を抽出し、一つのxlsファイルにまとめたいです。

複数のtxtの特定部分を抽出し、一つのxlsファイルにまとめたいです。
皆様のお知恵をお借りできませんでしょうか?

現在約1000行からなる同一体裁のtxtファイルを多数所持しております。

中身はタブで区切ってあったので、タブをコンマに変換し、CSVファイルを作りました。
これらのファイルを15~20ファイルごとにフォルダ分けしてあります。
このCSVファイルをエクセルで開いたところ、
うちB601:B802に必要な情報が入っていました。
この情報を以下のような要領で入力したまとめxlsファイルを作りたいです。

A列
1行目 一つ目のCSVのファイル名(フォルダ内のCSVを名前順で並べたときに1番上のもの)
2行目~203行目 一つ目のCSVのファイルのB601:B802

B列
1行目 2つ目のCSVのファイル名(名前順で2番目のもの)
2行目~203行目 2つ目のCSVのファイルのB601:B802

(以後15~20ファイル分、O~T列まで。20ファイル以上にも対応できると嬉しいです。)

このxlsファイルを最低でも20個作る予定です。

VBAマクロできっと出来るはずと思い、昨日9時間ほど調べたのですが、習得には至ってません。
例えば1つのCSVのB601:B802をコピーするマクロは作成できますが、
それをまとめファイルのA2に貼り付け、
まとめファイルのA1にCSVのファイル名を挿入し、
さらに同様の抽出をフォルダ内の別のファイルに連続して行い、
挿入部位が被らないようにまとめファイルB列以降に貼り付けさせることができません。

http://www.asahi-net.or.jp/~zn3y-ngi/YNxv252.htmlや
http://oshiete1.goo.ne.jp/kotaeru.php3?q=359726や
http://www.excel.studio-kazu.jp/kw/20080428180002.htmlなどを
応用できないか試してみましたが結局よくわからない状態です。
おそらくこちらの説明が不十分で答えにくい質問なのではないかと思いますが、
どなたかお答えいただければ幸いです。

また、勉強してから出直せ!的なことであれば勉強したいとおもいますので、
お勧めの書籍、サイトを教えていただければ幸いです。
どうかよろしくお願いいたします。

複数のtxtの特定部分を抽出し、一つのxlsファイルにまとめたいです。
皆様のお知恵をお借りできませんでしょうか?

現在約1000行からなる同一体裁のtxtファイルを多数所持しております。

中身はタブで区切ってあったので、タブをコンマに変換し、CSVファイルを作りました。
これらのファイルを15~20ファイルごとにフォルダ分けしてあります。
このCSVファイルをエクセルで開いたところ、
うちB601:B802に必要な情報が入っていました。
この情報を以下のような要領で入力したまとめxlsファイルを作りたいです。
...続きを読む

Aベストアンサー

処理する順番が決っていないのでしたら
DIR関数とループを上手く使えば良いかもです。
(手抜きなサンプルですが)
strFileName = Dir("C:\TEMP\*.CSV", vbNormal)
i = 0
Do While strFileName <> ""
 'ファイル開く(省略 ※エラーなら抜けないとですが)
 'コピー(省略)

 'ペースト
 Sheets("コピー先").range("A2").offset(0,i).pastespecial
 i = i + 1

 '次のファイル名
 strFileName = Dir()
Loop

決っていないなら
iColumn = .Cells(iRows, .Columns.Count).End(xlToLeft).Column
if .Cells(1,iColumn) = "" then
 iColumn = iColumn + 1
end if
とかでカラム位置を求めるしかないかもです。

Q「○○.xls は Microsoft Excel 5.0/95 ブックです。最新のファイル形式に更新しますか?」

Excel 2000 で作成した文書を今 Excel 2003 で編集したところです。上書き保存をしようとしたら

「○○.xls は Microsoft Excel 5.0/95 ブックです。最新のファイル形式に更新しますか?」「更新する場合は[はい]をクリックします」

という画面が現れました。もし「はい」を選択したら、Excel 2000 で見られなくなるのでしょうか?

Aベストアンサー

こんばんは。

私は、Excel2000 とExcel 2003 とをファイルをともに共用していますが、

Excel 97-2003 は、関数などで一部違いますので、数式自体に自動変換が必要な場合がありますが、Excel 2000 と Excel 2003 とは、フォーマット的には同じBiff8 ですから、一応、数式以外には問題ないはずです。つまり、Excel 97以降、Excel 2003 内のバージョンで作ったものは、基本的にはファイル構造としての互換性は保たれています。

Excel Ver.5 に戻るという場合なら、

1)  Microsoft Excel 97-Excel2003 および5.0/95 ブック(*.xls)
  または、
2)  Microsoft Excel 5.0/95ブック(*.xls)
  
という保存形式が必要ですが、基本的には、Biff5 以降は形式的には同じもので、特に97移行は、Biff8 になっています。Excel 2000 とExcel 2003 とは同じフォーマット形式です。

Excelでは、Excel 2003 で保存したものが、Excel 2000 で見れなくなるなんていうことはないはずですね。以下で、実験してみました。

ここC++ のコードが出ています。
http://support.microsoft.com/kb/178605/ja
Microsoft Excel ブックのバージョンを確認する方法
(たぶん、メッセージの内容は、Excel File構造の形式のバージョンで、Excelの直接のVersionが出てくるわけではありません。)
--------------------------------------------------------
今、Excel 2000 で作って、上記形式の2種類のファイルを作って、コンパイルして確認してみました。

 1) は、Ver.8
 2) は、Ver.7

となります。

その 2) のファイルを、
Excel 2003 で、再度、いくつかの数式を加え、
「Microsoft Excel 5.0/95 ブックです。最新のExcelのファイル形式に更新しますか?」
というメッセージを出して、
「はい」で、上書き保存します。

それを、今度は、Excel 2000 で、開いて処理し、終了をしてみましたが、何の支障もありません。

一般の方は、これ以上の知識は必要ありませんが、このあたりの資料は、OpenOffice.org ではかなり出てくるはずです。

こんばんは。

私は、Excel2000 とExcel 2003 とをファイルをともに共用していますが、

Excel 97-2003 は、関数などで一部違いますので、数式自体に自動変換が必要な場合がありますが、Excel 2000 と Excel 2003 とは、フォーマット的には同じBiff8 ですから、一応、数式以外には問題ないはずです。つまり、Excel 97以降、Excel 2003 内のバージョンで作ったものは、基本的にはファイル構造としての互換性は保たれています。

Excel Ver.5 に戻るという場合なら、

1)  Microsoft Excel 97-Excel2003 ...続きを読む

QExcelにて、別シートからデータの一部分を選択してコピーする

XPにてexcel2007を使っています。

現在、順位表を作っているのですが、VBAというものの入門本を読んでみたのですが、いまいちやり方が分からないため質問させていただきます。

1つ目のシートに総合順位の表【シート名:順位表】を作りたいと思っています。

今、別のシート【シート名:第1回結果】に


 1班
  1.赤井 80ポイント
  2.井上 
  3.上松 90ポイント
  4.江藤 60ポイント
  5.岡田
   ・
   ・
   ・     
  18.山根

 2班
  1.安藤 75ポイント
   ・
   ・
   ・
  18.渡辺 70ポイント


と入力しています。3班あり、各班とも18人います。
名前が「あいうえお順」に並んでいて、参加者のみポイントが打ち込んであります。

やりたいことは、この別のシート【第1回結果】から参加した人(ポイントありの人)のみ
名前とポイントをコピーして【順位表】の表に貼り付けたいと思っています。

どうやったこのようにうまくいくのでしょうか?
自分が悩んでいるところは、
(1)今回の参加者(ポイントを記入してある人)のみを選択するところ。
(2)1班、2班、3班と参加人数がちがうのに、【順位表】のシートに隙間なく、貼り付けるところ。
あたりです。

また、こういったものを参考するのに適した本を紹介していただけないでしょうか?

よろしくお願いします。

XPにてexcel2007を使っています。

現在、順位表を作っているのですが、VBAというものの入門本を読んでみたのですが、いまいちやり方が分からないため質問させていただきます。

1つ目のシートに総合順位の表【シート名:順位表】を作りたいと思っています。

今、別のシート【シート名:第1回結果】に


 1班
  1.赤井 80ポイント
  2.井上 
  3.上松 90ポイント
  4.江藤 60ポイント
  5.岡田
   ・
   ・
   ・     
  18.山根

 ...続きを読む

Aベストアンサー

別件で私は、他の人に似たような回答していますが、今回のようなものにも使えそうなので書き込みます。

以下の手順でやってみてください。

1、データをドラッグ
2、ホームの右端の「並べ替えとフィルタ」を選択
3、セルに出てきた漏斗?を選択
4、「空白のセル」のチェックを外す
5、このデータを再度ドラッグしてコピー
6、別シートに貼り付ける(その際、値だけを選択したほうがよいでしょう)

こうすると、今悩んでいらっしゃる(1)と(2)の両方が解決できるのではないでしょうか?

本に関してですが、私の場合は特に参考にしているようなものがなく、適当に使って行くうちに覚えました。

あまり、参考にならずにすいません。
(^^)

Qエクセルでデータ.xlsから1行毎に元シート.xlsへコピーし1行毎に多数ファイルを作成したい。

現在、以下のような繰り返し作業をカット&ペーストで何度も行わないといけません。
手が疲れて困っています。
エクセルマクロで簡単にできる方法を教えてください。

以下の例のようにデータ.xlsは、一番上の行に元シート.xlsに差込む位置、
次の行から1行ごとのデータがあります。

データ.xls
A B C D E F
1 A2 A3 B3 C2 D2 D3 <- 元シート.xlsにコピーする位置
2 test 123 456 789 012 345
3 test2 456 789 012 345 678
4 test 456 123 789 012 345
...

元シート.xlsは固定文字や罫線等があります。

元シート.xls
A B C D
1 ------------------------------
2
3
4 abcdefg 9876543
5 ------------------------------

元シート.xlsに、データ.xlsの1行ごとのデータを、指定したセルに入れ、
A列の名前で多数のファイルを作成したいのです。
ただし、A列で同じファイル名がある時は、ファイル名の後に_2等を付けて保存したいのです。

以下のような多数のファイルを自動的に作成する方法を教えて下さい。
宜しくお願い致します。

test.xls
------------------------------
test 789 012
123 456 345
abcdefg 9876543
------------------------------

test2.xls
------------------------------
test2 012 345
456 789 678
abcdefg 9876543
------------------------------

test_2.xls
------------------------------
test2 789 012
456 123 345
abcdefg 9876543
------------------------------
...

現在、以下のような繰り返し作業をカット&ペーストで何度も行わないといけません。
手が疲れて困っています。
エクセルマクロで簡単にできる方法を教えてください。

以下の例のようにデータ.xlsは、一番上の行に元シート.xlsに差込む位置、
次の行から1行ごとのデータがあります。

データ.xls
A B C D E F
1 A2 A3 B3 C2 D2 D3 <- 元シート.xlsにコピーする位置
2 test 123 456 789 012 345
3 test2 456 789 012 345 678
4 test 456 123 789 012 345
...

元シート...続きを読む

Aベストアンサー

丸投げに当るので、原型のみです。
上の例のtest_2.xlsのA1セルはtestが正しいと解釈して作成しています。
その他不明な部分は適当に仮定しています。(原型なので問題ないでしょう。)

・データの整合性等のチェックは一切省いていますので、実際の使用では各種のチェックを入れておかないと即エラーになります。(データが想定と違う場合)
・変数の宣言は省略して名前のみにしてありますが、実際はタイプを指定しておいたほうが良いでしょう。
・元シート.xlsおよび作成されるファイルは同じフォルダにあるものとしています。
・データ.xlsからのコピーはコピーメソッドで行っていますので、書式などもそのままコピーされます。
 (もし式が入力されている場合は、参照がおかしくなることがあり得ます)
・元データのデータ有無に関わらず、データシートのデータを上書きするようにしています。

データ.xlsがアクティブな状態で実行されるものと仮定しています。
(シート名、ブック名などは仮設定です)
適宜、修正してご使用ください。

Sub test()
Dim dst_name, mbk_name, mst_name, bk_name, b_name
Dim dst, mbk, mst
Dim ad, p, i, j

p = ThisWorkbook.Path & "\"  '// 対象となるフォルダのパス+"\"
dst_name = "データシート"    '// 対象データのあるデータ.xlsのシート名
mbk_name = "元シート.xls"    '// 元シート.xlsのファイル名
mst_name = "元シート"      '// 元シート.xlsの対象とすべきシート名

Set dst = Sheets(dst_name)
For i = 2 To dst.Cells(dst.Rows.Count, 1).End(xlUp).Row

'// 作成するファイル名をチェック
 b_name = dst.Cells(i, 1)
 If b_name <> "" Then
  j = 1
  bk_name = p & b_name & ".xls"
  While Dir(bk_name) <> ""
   j = j + 1
   bk_name = p & b_name & "_" & Format(j, "#") & ".xls"
  Wend

'// データをコピー、保存
  Workbooks.Open p & mbk_name
  Set mbk = ActiveWorkbook
  Set mst = mbk.Sheets(mst_name)
  For j = 1 To dst.Cells(i, dst.Columns.Count).End(xlToLeft).Column
   dst.Cells(i, j).Copy (mst.Range(dst.Cells(1, j).Text))
  Next j
  mbk.SaveAs (bk_name)
  mbk.Close
 End If
Next i
End Sub

丸投げに当るので、原型のみです。
上の例のtest_2.xlsのA1セルはtestが正しいと解釈して作成しています。
その他不明な部分は適当に仮定しています。(原型なので問題ないでしょう。)

・データの整合性等のチェックは一切省いていますので、実際の使用では各種のチェックを入れておかないと即エラーになります。(データが想定と違う場合)
・変数の宣言は省略して名前のみにしてありますが、実際はタイプを指定しておいたほうが良いでしょう。
・元シート.xlsおよび作成されるファイルは同じフォルダに...続きを読む

Q【word2003】excelからの差し込み印刷で,「Microsoft Excel ワークシート DDE (*.xls)」で別のシートを選択するには?

word2003を使用して,excelからの差し込み印刷を行っている際,数値に3桁ごとの区切り(,)が入らなかったので,
http://support.microsoft.com/kb/882154/ja#1
このページを参考に,「Microsoft Excel ワークシート DDE (*.xls)」を選択するようにしました。
ところが,元データには複数のシートがあり,いくつかの文書でそれぞれのシートを利用したいのですが,この方法では最初のシートしか選択できません。
別のシートを選択する方法はあるのでしょうか?
また,上記URLの下の方にある「データの差し込み後に書式を設定するには」で解決しようとする場合,具体的にはどのように入力したらいいのでしょうか。
ご存じの方がいらっしゃいましたら,どうぞよろしくお願いいたします。

Aベストアンサー

DDEの場合は、先頭シートだけが差し込みの参照シートになります。
これは仕様上諦めるしかないです。そこで桁区切りをフィールドコード
で変更される方式に戻して以下のように設定してください。

差し込み形式を元のOLE DBにする。
Wordの差し込みフィールドが設定している文書で[ Alt+F9 ]キーを押す。
フィールドコードが表示されたら桁区切りのためのスイッチを追加する。

{ MERGEFIELD フィールド名 \# #,##0 } にする。

または、スイッチの一部を省略して
{MERGEFIELD フィールド名 \# #,} でも出来ます。
これは「,」の区切りのスイッチが3桁区切りにしてくれるためです。
(「\##,」でも良いみたいです)

URL先では逆スラッシュ( / の反対 )で説明していますが、キーボードの
「ろ」のキーを示しているだけですから、「\」になるようにキーを押して
半角の「\」を追加してスイッチをたします。


このカテゴリの人気Q&Aランキング

おすすめ情報