Excel総合相談所6

このエントリーをはてなブックマークに追加
11
Excelに関する質問は、ここで!

・質問する人は可能な限り具体的に書くこと。
・Excelのバージョン、OSのバージョンも書くとレスが付きやすい。
・回答がなくてもキレないこと。
・分かる人はできるだけ回答して下さいませ。

前スレ
Excel総合相談所5
http://pc.2ch.net/test/read.cgi/bsoft/1018055390/

過去スレは、>>2を参照
21:02/06/12 01:12
3みー:02/06/12 09:01
Excel2000でシェイプをつかったVBAを作成したのですが、
Excel95、97、でも稼動するかわかりません。
どなたかこれらのバージョンの違いによる、機能の相違を検証したサイトを
ご存知ではないでしょうか?


4名無しさん@そうだ選挙にいこう:02/06/12 10:05
>1
スレたて乙で〜す
5名無しさん@そうだ選挙にいこう:02/06/12 11:17
すいません 教えてください
VLOOKUPで検索したデータ-をBOOK2に自動的にコピーして
コピーするときに一行ずつ下げたいのです
マクロを教えてください。お願いします

6名無しさん@そうだ選挙にいこう:02/06/12 13:58
おながいします。

簡単なマクロを使い編集し終わったファイルがあります。
ファイルオープン時にマクロの有効、無効のタブが
出てこないようにするにはどおしたら良いのでしょうか??
>>6
エクセルVBA質問&研究板
http://pc.2ch.net/test/read.cgi/bsoft/1008219498/58-59
8名無しさん@そうだ選挙にいこう:02/06/12 15:12
まったくの初心者で申し訳ありません。
教えてください。


   A      B  
1 樹木名あ 場所
2 アララギ  a
3 アジサイ  b
4 アオキ   e

このような表なのですが、「樹木名あ」の列を50音順に並べ替えして、
アオキ、アジサイ、アララギ、という順になるようにしたいのです。
ちなみに、Cの列には「樹木名い」が入っています。

よろしくおねいがいします。
>>7
ありがとうございます。
無事、解決しますた。
11名無しさん@そうだ選挙にいこう:02/06/12 15:54
たとえば
0.005468497
62502232.22
とあるとき
5.468*10^(-3)
6.250*10^7
と変換したいのですが、いい方法ないですか?
1211:02/06/12 16:02
すみません。欲を言えば書式で上付きもじのような

  -3
 10

にしたいです。
13名無しさん@そうだ選挙にいこう:02/06/12 17:22
取りあえず、書式を
0.000e-0
にしてみる。

満足できなければ、LOG10()などを使って自分で指数部と仮数部を求めるしかない。

windowsCEのpocketExcelを使用しているのですが、
pocketExcelにはSUBTOTAL関数がありません。
これにかわる方法はないでしょうか?

やりたいことは、
オートフィルタで選択された行の値の合計値です。
例、
A列の値をフラグにしてオートフィルタをかけ、
選択された行のF列の合計値をほしい。
=SUBTOTAL(9; F1:F100)
のような感じなのですが。

どなたかよい方法をご存知の方、おねがいいたします。。
15名無しさん:02/06/13 16:46
会社専用の積算ファイルを作ったんですが、このブックを開いたときに、
自動的に開いて数秒後に自動で閉じる 「会社のロゴ入りのユーザーフォーム」を
入れたいと思います。(こーゆうのが好きな上司がいるので…)

で、ロゴ(bmp)を貼り付けたUserForm1を作り

ThisWorkbookオブジェクトに

Sub Workbook_Open()
Application.WindowState = xlMaximized
ActiveWindow.WindowState = xlMaximized
UserForm1.Show  ’←コレ
End Sub

コレを入れて、自動で開かせることは出来たんですが、
「数秒後に閉じる」為にはどうすればいいか判らないので
教えてください。

OnTimeメゾットを使うんだと思いますが、ヘルプを見ても
判らなかったです。
>15
こゆこと?
sub auto_open()
 Userfrom1.show
end sub

Private Sub UserForm_Activate()
 Application.Wait (Now + TimeValue("00:00:05"))
 Unload UserForm1
End Sub
17名無しさん@そうだ選挙にいこう:02/06/13 19:20
(株)A社
(有)B社

の頭にある(株)や(有)を無視して並び替える方法はないでしょうか?
すみませんが、どなたか知ってたら教えてください
18名無しさん@そうだ選挙にいこう:02/06/13 19:27
例えばH25に"END"を入れて
C3〜C25までの合計をC2に出すにはどうしたら良いですか?
(関数で)(2000・98)
19名無しさん@そうだ選挙にいこう:02/06/13 19:31
追加

ENDの位置は項目を追加するごとに
したに下がります。

要は下に項目を追加すると、
一番上の合計欄が自動で書き換わるようにしたいのです。
20名無しさん@そうだ選挙にいこう:02/06/13 19:42
>>17

http://www.mars.dti.ne.jp/~hiroyuki/excel/kansuuDic.html
の文字列のところに有ります。
21名無しさん@そうだ選挙にいこう:02/06/13 21:29
○度○分○秒というデータを扱いたいのですが、
どうすればいいんでしょうか?

↑平均をとったり...という作業です。
22名無しさん@そうだ選挙にいこう:02/06/13 22:02
現在、エクセルで表計算検定の問題をやっているのですが
構成比を求めると#DIV/0! と表示されます。
何がまずいのでしょうか?

構成比=売上金額 / 売上数合計 です。
こちらのファイルです。

http://gotonext.gi-ga.net/upbbs5/img-box/img20020613220206.xls
>>22
ファイルは問題ない。
売上数合計=J16だけど、オートフィルで式のコピーをしてるときに
絶対参照じゃなく相対参照にしててJ16がずれていってエラーが出てるんじゃないの?
2423:02/06/13 22:20
K16の間違い
25名無しさん@そうだ選挙にいこう:02/06/13 22:29
>>18
ENDの位置は、
=MATCH("END",H:H)
で判る。この例では25が返る。

あとこれに =INDEX() か =INDIRECT() を適用。
26名無しさん@そうだ選挙にいこう:02/06/13 22:39
>>21
度分秒は、時分秒と同じ比率なので、
区切りを:にして、シリアル値で扱えばいい。

度が24を越えるだろうから、表示形式を[h]:mm:ssにする。
小数で表示したい時は、*24して数値として扱う。
2722:02/06/13 22:56
>>23
レスありがとうございます。
絶対参照を設定したらできました。
ありがとうございました。
あるデータの近似曲線を書きたいのですが、
そのデータの中に必ず通って欲しい点が2点あります。
2定点を通る近似曲線を書くにはどうしたらいいのですか?
29 :02/06/13 23:33
>>20
レス遅くなってすんません。見てみたのですが,あまりよくわかりませんでした。(汗
関数を使って一部の文字列を抜き出してそれを元に並び替えるということでしょうか?
30名無しさん@そうだ選挙にいこう:02/06/13 23:56
>>28
君だけでは無く、この前スレなどで近似曲線について質問する人は、
何のために、どのようなデータに対してその近似曲線を引きたいのかを考えるべきだ。

多項式、指数、など色々あるが、
元のデータは理論上ある特定の式に従うはずだが誤差を含んでいるという状況で、
データや誤差について判明している特徴から、式の不明な部分を推定するのが近似曲線なのであって、
ただ何となく線を引きたいのだったら、鉛筆で書いとけ。
3128:02/06/14 00:14
>30
2定点を通ることは理論上分かっているが、
特定の式は解明されていない。
グラフの見栄え上、線を引きたいだけなのだが
鉛筆で引くには量が多すぎるので質問した。

いい方法を思いついたので試してみるよ
3230:02/06/14 00:38
>>31
近似曲線の意味を理解しているのならいいけど。

グラフの形状がどうなるべきなのかある程度知見が無いと、
あの質問だけだと、単にその2点を直線で結んでも、
(データ数−1)次の多項式でも、何でもOKになってしまうよ。
33名無しさん@そうだ選挙にいこう:02/06/14 09:38
近似曲線てさぁ難しいこと考えないで

プロットだけして、(図形描画で)自分で線を引くってのはだめなのか?

キット、そんな単純な問題じゃないんだろうな・・・
34名無しさん@そうだ選挙にいこう:02/06/14 17:42
ExcelのVBAで疑似データベースみたいなことをしてるんですが、
例えば、コード列が「01」の商品名を取ってくるみたいなSQLのSelect文っぽいことは
どの様にすれば良いのですか?vlookupがあれば良いんだけど…。
よろしくおながいします。
35名無しさん@そうだ選挙にいこう:02/06/14 20:10
Excel.WorksheetFunction.VLookup()
3621:02/06/14 21:27
>度が24を越えるだろうから、表示形式を[h]:mm:ssにする。
小数で表示したい時は、*24して数値として扱う。

ってどういうことなんでしょうか?

sin 60:01:36 っていう計算をするにはどうしたらいいんでしょうか?
このままでは0.59758162っていうようにでてしまいます。
正しい値は0.86625802なんですが...。
37名無しさん@そうだ選挙にいこう:02/06/14 21:30
ある列と列を比較して、
セルの内容が一致したならば、
一致する、という事を書いて行くという方法を
以前お聴きし、参考にして
A B C
a b
c a
a a 一致
b a

とかだったとした場合、
各々を比較して一致した場合は一致するという事
を列Cにでも格納していくといった感じのマクロを作成しました。
しかし、そのマクロにおいては、最終行における比較が終了した
ら自動的に最終行をいう事を検知して比較を終了するという
事まではやってくれません。
(一回一回マクロを編集して、何行目までを比較するという
風に書き直しています)
それだとめんどくさいので、自動的に最終行を検出して
そこで、比較が終るといった感じのマクロを作るには
どのようにしたらいいでしょうか?

(例えば、最終行の次の行は、A、Bとも空のセルになるので、
それを利用したらいいのかな?とも思うのですが
やりかたが分かりません)
>>37
While....Wend ステートメントが適当と思われる。
AとBに値が入っておれば、ある処理をさせ最後に一行下げる。
AとBが空白ならばEnd
ヘルプを見てくらはい。
3926:02/06/14 22:09
>>36
君は、2つのことを理解していない。

1.
 Excelで時刻や日付けを扱う時に使うシリアル値とは、1日を1とした小数。
 つまり、時:分:秒 と表すとき、24:0:0 = 1.0 となる。
 一方、度分秒を小数で表すときは、どこを1にするか自分で決めることになるが、
 1度を1とした小数にしたいのなら、1:0:0 = 1.0 となる。この場合、時分秒との比は24。
 360度を1とした小数にしたいのなら、360:0:0 = 1.0 となる。この場合、時分秒との比は24/360。

2.
 Excelに限らず、sinには度を使わず弧度法(ラジアン)を使う。
 意味が分からなければ今後のために勉強した方が良いと思う。
>>37

Sub aaa()
Dim i As Long
 With ActiveSheet
   For i = 2 To .Range("A2").End(xlDown).Row
     If .Range("A" & i) = .Range("B" & i) Then .Range("C" & i) = "一致"
   Next i
 End With
End Sub
4121:02/06/15 00:14
>>39
Excelで角度を扱うのはちょっとめんどくさいんですね〜

ラジアンのことについてはわかりますが、実験で得た値が
度だったんでそのままやりたかったんですけどね・・・
42名無しさん@そうだ選挙にいこう:02/06/15 01:04
VBAでRange("A1:E5")が選択されているとして、
Aや1は.Rowと.Columnで取得出来るのですが、
このEや5を取得するにはどうしたら良いのですか?
43--kiss---○---Love--:02/06/15 01:15
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜★
/⌒ヽ ===== Kiss Love これって、 =====
u・・u
弌=●=) http://www.KissLoveTOCO.com
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜★
○__)______
....._____◎) >START SEARCHING HERE
.....__) Find out anything...
.....__) About anyone....
/____) Kiss Love World No,1 SEARCH JAPAN
なんでもあるじゃん。
暴言は英語ページでね。フランス人とバトル?
パラグアイ語もありんす。
>>42
RowとかColumnというキーワードで、ヘルプをさがしてみると吉
>>42

Ctrlキーを押しながら、複数エリアを選択した場合でも、最後のエリアの最後のセルを表示する

Sub bbb()
Dim a As Range

 Set a = Selection
 If a.Areas.Count > 1 Then Set a = a.Areas.Item(a.Areas.Count)

 MsgBox "Address : " & a(a.Count).Address(0, 0) & Chr(13) & _
              "Row : " & a(a.Count).Row & Chr(13) & _
              "Col : " & a(a.Count).Column
End Sub
46 :02/06/15 06:51
ちとスレからそれるが、回答しているお前!
その知識どこで手に入れてる?
>>46
素直に、「Excelでやりたいことを調べる方法を教えてください」と
聞けよ。

漏れは、helpをメインに使うけどな。
48馬鹿:02/06/15 10:39
>>46
その質問は、解党している全員に対するものか?
それなら、漏れは、DOS時代のBASICが文字どうりベースだな
後は、記録マクロを見て解析したりするが一番はやはり良い参考書か
49名無しさん@そうだ選挙にいこう:02/06/15 13:53
コマンドボタンをクリックしたら、アクセスで作ったクエリーをエクセルに
落とし、そのデータをエクセルの請求書フォーマットにひっぱって
差込印刷みたいな事をやろうと思って下記のようなVBAをアクセス側
で書いたのですが、実行してもエラーになってしまいます。
(Set ExcelObjectという言葉の部分が黄色くなり、変数の定義がされて
ませんというメッセージが出ます)
解消するにはどうしたら良いでしょうか? お手数かけてすいませんが
教えてください。
----------------------------------------------
Option Compare Database
Option Explicit

Private Sub 請求書出力ボタン_Click()
With CodeContextObject
DoCmd.TransferSpreadsheet acExport, 8, _
"損益計算書作成クエリー", "C:\My Documents\新請求書フォーマット.xls", True, "当月データ"
End With
Set ExcelObject = CreateObject("Excel.Application")
ExcelObject.Visible = True
ExcelObject.Workbooks.Open Filename:="C:\My Documents\新請求書フォーマット.xls"
ExcelObject.Sheets("当月データ").Select
ExcelObject.Columns("D:D").Select
ExcelObject.Selection.Copy
ExcelObject.Sheets("請求書フォーム").Select
ExcelObject.Columns("P:P").Select
ExcelObject.ActiveSheet.Paste
ExcelObject.Sheets("当月データ").Select
ExcelObject.Columns("A:A").Select
ExcelObject.Selection.Copy
ExcelObject.Sheets("請求書フォーム").Select
ExcelObject.Columns("Q:Q").Select
ExcelObject.ActiveSheet.Paste
ExcelObject.Worksheets("請求書フォーム").Activate
下端 = ExcelObject.Range("P2").end(xlDown).Row
For 行 = 2 To 下端
ExcelObject.Range("C6").Value = ExcelObject.Cells(行, 16)
ExcelObject.ActiveWindow.SelectedSheets.PrintOut
Next
ExcelObject.ActiveWorkbook.Save
ExcelObject.ActiveWorkbook.Close
ExcelObject.Visible = False
End Sub
>>49
> Option Explicit
で変数の明示的な宣言を強制してるんだから、
ExcelObjectって変数をどこかで宣言してあげないと...
Setの前にこの文入れてみて。

Dim ExcelObject As Excel.Application
5150:02/06/15 14:11
っと、「行」と「下端」もね
Dim 行 As Long
Dim 下端 As Long
52名無しさん@そうだ選挙にいこう:02/06/15 14:12
>>50
ありがとうございます!
ただ、さっそく試したのですが、今度は
「ユーザー定義型は定義されてません。」
というメッセージが同じ部分で表示されてしまいました。
どうしたものでしょう。。。
53名無しさん@そうだ選挙にいこう:02/06/15 14:15
>>51
あ、すいません。さっそくやってみます。
具体的に教えていただいて感謝です!
5450:02/06/15 14:23
>>52
参照設定がされてないのかな。

ツール → 参照設定 で
□ Microsoft Excel 9.0 Object Library (うちの環境の場合)
にチェックを入れる。
55名無しさん@そうだ選挙にいこう:02/06/15 14:25
214 名前:213 :01/10/20 12:02 ID:fFGjQToc
先程お願いしましたが、まだ削除されていません
事実無根です
早急に削除して下さい
http://kaba.2ch.net/test/read.cgi/company/997171282/699

215 名前:削除屋三太郎 ★ :01/10/20 12:09 ID:???
>>213-214
http://www.2ch.net/guide/adv.html#saku_guideに
>法人・公的機関の取り扱い
>原則放置
> 法人・企業については、社会・出来事カテゴリ内では、批判・誹謗中傷、
>インターネット内で公開されている情報、インターネット外のデータソースが不明確なもの、は全て放置です。

とありますので、放置とさせていただきます。

260 : :01/10/23 10:54 ID:iMDesK4O

> 法人・企業については、社会・出来事カテゴリ内では、批判・誹謗中傷、
>インターネット内で公開されている情報、インターネット外のデータソースが不明確なもの、は全て放置です

おいおい、データソースが不明確だからこそ削除するんだろうが(苦笑
>>49
エクスポートだのコピペだのせんでセルに直接値をぶち込んだほうがいいぞ

まあ何でもいいがこれだけは直しとき (直さんでもいいが一番最後に入れとき)
× ExcelObject.Visible = False
○ Set ExcelObject = Nothing
57名無しさん@そうだ選挙にいこう:02/06/15 14:49
>>54
ありがとうございます。それもためしてみます。

>>55
誤爆ですか?
58名無しさん@そうだ選挙にいこう:02/06/15 14:52
ありがとうございます。やってみます。

>エクスポートだのコピペだのせんでセルに直接値をぶち込ん
>だほうがいいぞ
請求書のフォームに名前だけ入れると、アクセスから落とした
データを参照して、お客一人づつ請求書をプリントするように
したいんです。
>>58
お前超ド素人だな (w
それとも素人を装っての煽りか?

オレがいいたいのはムダを省けってコト
例えば5行使ってのコピペは1行で済む
With ExcelObject.Workbooks("新請求書フォーマット.xls") 'オブジェクトへの参照はきちんと行うべし!
.Sheets("請求書フォーム").Columns(16) = .Sheets("当月データ").Columns(4).Value
End With
※ホントは Columns オブジェクトじゃなく Range オブジェクトで必要最小限の範囲を指定すべき

同じ理屈でエクスポートじゃなくデータを直接設定する (無論やり方はまったく違うぞ)
わかる?
60名無しさん@そうだ選挙にいこう:02/06/15 17:56
>>59
>例えば5行使ってのコピペは1行で済む
3行つかってるし。片方にしかValue付いてないし。動くけどさ。

>※ホントは Columns オブジェクトじゃなく
Columnsプロパティだし。

>同じ理屈で
コードを短くするのと方法論じゃぜんぜん理屈違うし。

やたらと偉そうな割にはVBAも日本語も恥ずかしいくらいに中途半端。煽りですか?
61名無しさん@そうだ選挙にいこう:02/06/15 18:01
VBA最近習って、自習中です!
先輩方、質問お願いしたいっす!

ある表のM列が「001」の行の値をA〜Mまで1つずつ参照していきたいのですが、
M列から「001」を探すのはfindで出来たけど、
探した行の値を順に取るのが出来ません。

M2に「001」があったとして、A2を参照したかったら12セル分Previousで
移動するもんですか?

うーん…VBAの中でExcelのは一番難しく感じます…。

>651

Findは使わなくても良いと思うけど?

Sub checkM()
 Dim myRange As Range
 For Each myRange In Range("M1:M" & Range("M65536").End(xlUp).Row)
  If Val(myRange) = 1 Then
   MsgBox Range("A" & myRange.Row)
   'Range("A" & myRange.Row).Select
   Exit For
  End If
 Next myRange
End Sub

>VBAの中でExcelのは一番難しく感じます
そう?Excelが一番体系だっていてわかりやすくない?
(Wordが個人的には一番難しいと思うけど?)
>651
PreviousよりもOffsetの方が使いやすいよ
>>46
本、マクロ記録、ヘルプ、Web、そして蓄積された.clbから
6561:02/06/15 19:22
>>61です。ありがとうございます。

>>62
ああ、こんな方法があるのですか。
For Each〜ってのも習いましたが、よく理解出来なくて忘れてました。
こんな風に使うのですね。勉強になります。
あと、Range("M1:M" & Range("M65536").End(xlUp).Row)←これがよくわかりません。
一度、一番下のセルを参照して、また一番上のセルを参照するのですか。
ちょとヘルプよく見ます。

>>63
Offsetプロパティって習ってませんでした。勉強になりますた。
6662さんじゃないけれど:02/06/15 19:33
>Range("M65536").End(xlUp).Row)←これがよくわかりません
M65536(excelの最終行)から上がってきて、中身のある最初のセルの行番号
>Range("M1:M" & Range("M65536").End(xlUp).Row)
M1から始まって、M列の中身のある最終セルまでの範囲

この方法で指定をすると、データ数が変わっても、途中に空欄があっても対応可。
6761:02/06/15 19:59
>>66
ありがとうございます。
Endって完全に端まで逝くんじゃなくて、最初に出会ったデータの入っているセルで
止まるってことですね。だったらえらい便利ですね。最強か?
勉強になりました。
68名無しさん@そうだ選挙にいこう:02/06/15 20:16
シート変えるキーボードショートカットって無いですか?
いちいちマウス触るの飽きたよー。
>>68
シートチェンジならCtrl+PageUP/Down
別ブックならCtrl+F6
70名無しさん@そうだ選挙にいこう:02/06/15 20:39
>>69 tnks
71名無しさん@そうだ選挙にいこう:02/06/15 20:45

----↓史上最低クズ板発見 !! (^o^)丿↓-------------------------
http://pc.2ch.net/hard/
カテゴリ;ハードウェア
★↑馬鹿博之本人 出没板★

------該当板発見、 ↓ちっともお勉強にも屁にもならない板発見 !!↓---------

××××http://pc.2ch.net/hard/←チンカス板 or クズの集まり××××

            ↑こいつらの中にスパムやってる奴いるぜ。
なんせ、↑こいつらキチガイ集団だからな。

7237:02/06/15 20:54
>>40
その方法を応用したらできました。
有難う御座います。
73あああ:02/06/15 22:34
322,456,433 
58,884,211 ←直接入力
235,689,353
  ・
  ・
  ・
617,029,997  ←=sum関数で総和をだしたもの
[上記単位は円]

上記のように入力は円単位で、表示は下記のように千円単位に四捨五入して
322,456 
58,884
235,689
  ・
  ・
  ・
617,030
[単位は千円]

とできませんか。
書式設定の表示形式を変えればできそうだとは思うんですが、どうやっていいのかわかりません。
入力と表示のセルを別にするなら、round関数を使えばいいんですが
同じセルでしたいもので・・・。

ご教授お願いします。
74名無しさん@そうだ選挙にいこう:02/06/15 22:42
>>73
#,##0,
7573:02/06/15 22:54
>>74
さっそく試してみました。
素晴しいです。ありがとうございます。

もう少し詳しく伺いたいんですが、どういう仕組みなんですか?
#とか0とか,の役割は?
万単位で四捨五入の場合は?
76名無しさん@そうだ選挙にいこう:02/06/15 23:10
0604 や 1203 などと入力し
6月4日 12月3日 などと表示させる方法を教えてください。
>>76
=DATEVALUE(LEFT(TEXT(A1,"0000"),2)&"/"&RIGHT(A1,2))
7877:02/06/15 23:31
>>76
#"月"00"日"だと、
0614→6月14日、1231→12月31日、0604→6月04日、1203→12月03日
とできるが、6月4日、12月3日とはできない・・・ハズ。
7976:02/06/15 23:32
>>77-78
ありがとうございます。

>>78
いえいえ、小文字でいいです。ありがとうございました。
80名無しさん@そうだ選挙にいこう:02/06/16 11:55
CSV形式で保存して、メモ帳で開くと、横の列の最後に「,,,,,,」というものが残ってしまいます。
いちいちメモ帳で取り除くのは面倒なんで、それを出さないようにするにはどうしたらいいのですか

教えてください。
81名無しさん@そうだ選挙にいこう:02/06/16 12:33
>>80
別に取り除く必要無いんじゃないの?
82名無しさん@そうだ:02/06/16 17:29
>>80
>「,,,,,,」というものが残ってしまいます
ていうか、ナニモナイヨという各セルの情報を記すために
「,,,,,,」が記されているんです。

ほんとに必要ないのに、全行とも等しく末尾に「,,,,,,」が付くのなら、
そもそも、もとの *.XLS ファイルのワークシートに書かれている情報が
へんです。要らない列があります。
要らない列は削除(クリアじゃないよ)しておしまいなさいな。
83SleepingHead:02/06/16 18:57
>>78
[DBNum3]#"月"00"日"
84名無しさん@そうだ選挙にいこう:02/06/16 19:09
Range("A1:B10").Select
Selection.Sort Key1:=Range("A1")

とやってもソートされないのですが、何が足りないのでしょうか。
>>84
ちゃんと動くよ。
データはソート可能なものが入ってる?
ExcelのVerは?
8684:02/06/16 19:49
>>85
どもっす。Ver97です。
今、例として(A列B列全部文字列です)

 A       B
あああ    ○○○
いいい    ○○○
あああ    ○○○
いいい    ○○○
いいい    ○○○
あああ    ○○○

となってるのですが、>>84に書いたのはA1を拠点として

 A       B
あああ    ○○○
あああ    ○○○
あああ    ○○○
いいい    ○○○
いいい    ○○○
いいい    ○○○

にするコードですよね?これがならないのです。
自分で書いてて分からなくてスマソです。
うーん、わかりません。
97で上記例で、当たり前に動きました。
エラーメッセージの類いは出ないのですよね。
他のマクロは動いてますよね。
一回、自動記録でも使って試してみるとか?
うーん、判りません。
>>84
↓の一番上のカキコのようにしてみたらどうだろ?
http://www.uchidas.com/yasuo/vbaboard/vbaboard98.html
89Excel2000@Win98:02/06/16 21:02
メニュー、ツールバーが出てきません。
ヘルプでツールバーの表示、非表示について調べたところ、
“「ツール(T)→ユーザー設定」から〜”って載ってるのですが、
ユーザー設定自体がグレーアウトしてしまっている。
(今は、IEからExcelファイルを開いてメニュー、ツールバーを表示させてしのいでいます。)
修復インストールをしても直りません。
91名無しさん@そうだ選挙にいこう:02/06/16 21:10
DO素人です。
顧客管理などで使用したいですが、セル1では名前だけで セル2ではその詳細をクリックして
使いたいと考えています。簡単に出来る方法など教えて下さい。
>>91
セル1とかセル2というのが、A列とかB列という意味なんだろうけど、

>セル2ではその詳細をクリックして使いたいと考えています。

何をクリックして、何に使うのかがわからん。
質問が第三者に伝わるように書き直してくれないか?
顧客管理ならAccess向きだと思うけどね。
93名無しさん@そうだ:02/06/16 23:40
>>91
92さんの言うとおり、
現状では何をしたいのかが自分自身で言えないくらいの
段階だから、それが問題。
そもそも、顧客管理「など」なんて、イイカゲンすぎ。

お教室に通うのが、なにしろ「簡単」だと思う。ガンバレガンバレ。
もっと「簡単」なのは、業者に任すこと。
9484:02/06/16 23:56
>>87、88サン
返事遅れてスミマセン。
なんと範囲選択して、メニューから並び替え選んでも
ソートされませんでした…。
シートに保護なんてかけてないし、なぜだかさっぱり分かりません。
もう少し、よく見ることにします。ありがとうございました。
952000:02/06/17 00:12
 OFFICE2000をWIN98で使っています。
今まで使っていたWIN98のユーザーが不要になったので、
コンパネからユーザーごと削除して、別ユーザーで
ログインしたら、OFFICEが使えなくなってしまいました。
アプリケーションをインストールしてくださいと出ます。
プログラムはちゃんと入っているので、どうやらOFFICE2000は
ユーザー1人につき1ライセンスといった管理をしているのだと
思いますが、ユーザーは一人しか登録しませんので、
最初にインストールした以外のユーザーでなんとか使えるように
ならないでしょうか?
 再インストールすればよいのでしょうが、CD-ROMのついてない
ノートPCなので、それも簡単には出来ません。
 レジストリなどをいじればよいのかもしれませんが、その辺が
わからないもので。。。
 詳しい方よろしくお願いします。
962601:02/06/17 00:56

表の値を変えてもグラフ中の値を変えないようにするにはどうしたら良いのですか? 
もう一つエクセル開いてそっちにコピペする方法以外にありますか?
もう1つシート作ってそっちにコピペする。
982601:02/06/17 01:06
>>97
それ以外の方法はありません?
9980:02/06/17 01:16
>>81-82
レスどうも。
板違いになってしまうかもしれませんが、
FS2002でFlightPlanを作ってるんです。[,,,,,]があると、コンパイルしたときにエラーが出てしまうので、
どうしても取り除きたいんです。
全ての行にあるわけではありません。
それは、いちいちメモ帳で消すしかないんですか?
図としてペイントなどにコピぺして保存。
Excelで挿入−図−ファイルから、とか?

しかし、そんなややこしい事したきゃないけどなぁ。。。
1012601:02/06/17 01:25
>>100
でもそれだと重くなってしまいますよね?
要はA4一枚にグラフを8個貼りたいのですが、たとえばワードにグラフを
コピペしたりするとかなり重くなりますよね?それを解消する方法は無いものかと思って
質問したんです。先に書くべきでしたね。すみません。
>>99
>>82でいらない列を消せばいいと書いてあると思うんだが。
それでもダメだったの?
>>101
だったら>>97の方法で十分だと思うんだが。
>>95
この現象かな
http://support.microsoft.com/default.aspx?scid=http%3a%2f%2fwww.microsoft.com%2fJAPAN%2fsupport%2fkb%2farticles%2fJP233%2f5%2f29.asp
とべなかったらJP233529をマイクロソフトの技術情報で検索してみて。
結論はそれぞれのユーザーでセットアップ。
1052601:02/06/17 01:43
>>103
それだと表の値を変えるとグラフの値も変わってしまうんです。
106100:02/06/17 01:47
グラフの数だけデータ(系列)も用意すれば?
それがシンプルでストレートな方法だと思いますョ。
1072601:02/06/17 01:52
>>106
やはりそうなってしまいますよねぇ・・・。
【スレ違いだと思いますが初歩的な質問】
テレビ番組表を1年分ぐらいダウンロードしたhtmlファイルがあるんですが、
それを年・月・日付がわかるように整理したいんですがexcelではどのようなことができるのでしょうか?
わかりやすくhtmlにリンクつけて整理することできるでしょうか?
結構多い量のファイルの管理ってどうやったらうまくできるのかわからないので教えていただきたいです
>>107
グラフを選択状態にして
Shiftを押しながら 編集>図のコピー → 編集>図の貼り付け
11081:02/06/17 02:31
>>99
マクロで、print#で自分で出力書式を設定したらできると思う。
このスレか前スレで最近あった。
すまんがいまへべれけなのであとはじりきでたのむ
111100:02/06/17 02:42
>>109
あ、それだ。100でやろうとして思い出せなかったの。
サンキュ、すっきりした。
112名無しさん@そうだ選挙にいこう:02/06/17 02:45
>>108
逆に、自分はどのように整理したいのかを考えた方がいいと思う。
それによってどのソフトでどんな作業をするか決まる。

例えば、日付けをクリックしたらその日の番組が表示される、とか、
タレント名や番組名を入力すると検索できる、とか、
タレント別の出演延べ時間ランキングを作りたい、とか。
>>112
日付だけの管理でいいんです。(ちょっとメモを入れてみたいですが。「ワールドカップ期間中」など)
たまった不要ファイルでもなんか愛着あって捨てれない。。。
どうせならひとつのファイルを開いたらそこからリンクさせることができたらなと思ったわけです
やっぱりタグうってシコシコとリンク張ってった方がいいですかね?
ファイル名が「tv2002-05-18Vt.html」のように連続してるのでexcelだと簡単かなと。。。
上記のように日付クリックでhtmlファイル起動ならexcelの初心者本読めば簡単にできますか?
>>113
file://フルパスでハイパーリンクになるはずだから・・・

日付をA列にとるとして、B列に
="file://tv"&text(a1,"yyyy-mm-dd)&"VT.html"

その後、オートフィルしたらどうかな?
115114:02/06/17 03:24
×="file://tv"&text(a1,"yyyy-mm-dd)&"VT.html"
○="file://(フルパス)\tv"&text(a1,"yyyy-mm-dd)&"VT.html"
116114:02/06/17 03:33

そのままじゃならないね。Excel2002
値コピペ
して、F2&Enterしたらハイパーリンク化したけど・・・

スレ汚しスマソ。もう寝るよ。
>>113
Alt+F11→挿入>標準モジュール
そこに↓のマクロをコピペ。
excelに戻ってファイル>名前を付けて保存。(保存先はリストにしたいhtmlがあるフォルダ)
あとはマクロの実行でどうだろ?

Function Mypath()
  Mypath = ThisWorkbook.Path
    If Right(Mypath, 1) <> "\" Then
    Mypath = Mypath & "\"
  End If
End Function

Sub ファイルリスト読み込み()
  Dim fn As String
  Dim i As Integer
 
  i = 1
  fn = Dir(Mypath & "*.htm", vbNormal)
  With Worksheets("Sheet1")
    .Cells(i, 1) = fn
    .Hyperlinks.Add Anchor:=.Cells(i, 1), Address:=fn, TextToDisplay:=fn
    While fn <> ""
      i = i + 1
      fn = Dir
      .Cells(i, 1) = fn
      .Hyperlinks.Add Anchor:=.Cells(i, 1), Address:=fn, TextToDisplay:=fn
    Wend
  End With
End Sub
>>114-117
詳しい説明ありがとうございます。大変参考になります。
記述してあるマクロがどうなるのか理解すらできませんが(藁
レスを参考にしながら少し勉強して、色々試行錯誤して作ってみたいと思います
くだらない質問に答えてくださってありがとうございました。
スレ汚しすみませんでした。
119名無しさん@そうだ選挙にいこう:02/06/17 16:08
過去ログ3にも有ったのですが、
excelファイルが、不正終了後に、読み取り専用になってしまいました。
アイコンからのプロパティ欄には「読み取り専用チェック」は有りませんでした。
削除も移動もできない状態です。

なんとか、削除だけでもできないものでしょうか?
良きアドバイスお待ちしています。
>>119
Tempフォルダ内のファイルを削除する
http://arena.nikkeibp.co.jp/qa/trouble/20020416/01/
121名無しさん@そうだ選挙にいこう:02/06/17 17:34
ファイル内にHtmlタグが含まれているcsvファイルをエクセルで開くと、
タグが出力された状態で表示されてしまい、テキストとして編集することが
出来ません。Htmlタグもcsvファイル内のテキストとして編集したいのですが、わかりません。
アドバイスをいただけると助かるのですが、宜しくお願いします。
122名無しさん@そうだ選挙にいこう:02/06/17 17:53
>120様
ありがとうございました。うまくいけそうです。
123多分123:02/06/17 18:43
EXCELで「リッポウメートル」の単位として、uではなく、右上の数字
が3になったものを表示させたいのですが、どうすればいいのですか?
「単位」とか「記号」で変換押しても、「u」は出てきても、
「リッポウメートル」の単位は出てこないのですが。
>>123
mに上付の3じゃダメ?
>>121
""で囲んでもダメ?
126多分123:02/06/17 19:43
>>124
上付の3はどうすればできるのですか?

>>126
「m3」と入力する
数式バーの中で「3」(以降)だけを選択し、右クリック
セルの書式設定から、文字飾りで「上付き」にチェックし、OK
もう一度、Enterで確定
128多分123:02/06/17 20:00
>>127
ありがとうございます。
できました。
会社のExcel97で先日、自動保存ってのを実行したのですが、ウザくなってはずしました。
にもかかわらず、Excel起動する時にステータスバーに
Autosave.exe(拡張子違うかも…)と表示されて、その横にゲージがすすすっと出ます。
オートセーブはされない状態なのですが、毎起動時に出るのでウザくて仕方ないです。
他にチェックなどあるのでしょうか。
>>129

ツール−アドイン
>>121
(゚Д゚)ハァ?
132名無しさん@そうだ選挙にいこう:02/06/17 22:44
>>121 さん、
私も知らなかったけど、そうなるんですね。
今、エクセル2000で、A1〜A5セルに
<html>
<font color=red>
ABCDE
</font>
</html>
って入れて、csv形式で保存してから呼び出したら、
A1のセルに赤文字で「ABCDE」って表示されてしまい、
セルの書式設定をみたら、フォントが赤になってた。

エクセルからタブ区切りテキスト→csv にしても
同じだ。なんでだろう。
>131 さんは、なんで(゚Д゚)ハァ?になっているの?
解決方法はないんでしょうか?
133名無しさん@そうだ選挙にいこう:02/06/17 23:17
データ - 外部データの取り込み - テキストファイルのインポート
134名無しさん@どーでもいいことだが。:02/06/18 00:19
すみません。 エクセル2000で質問があります。

エクセルつかって表をつくりました。
1 AAAAA 2000 4/5
2 BBBBB 1980 4/3
3 CCCCC 2500 4/4
:

上記のような表を日付で降順でならべかえさせると
1 AAAAA 2000 4/3
2 BBBBB 1980 4/4
3 CCCCC 2500 4/5
:

となってしまいます。これを
2 BBBBB 1980 4/3
3 CCCCC 2500 4/4
1 AAAAA 2000 4/5
:
とさせるにはどうすればよいでしょうか?
よろしくおねがいます。
135名無しさん@そうだ選挙にいこう:02/06/18 00:28
>>134
並び替えたいデータの入っているところを全部選択してから並び替え。
136名無しさん@そうだ選挙にいこう:02/06/18 00:50
○ あああ
○ あいあ
○ あいい
× あああ 
○ いいい
× あいい
× あああ
× あいあ

このように重複する文字列が出てきた場合、
×のフラッグを付けるようにするにはどの関数を
もちいれば良いのでしょうか?
137名無しさん@そうだ選挙にいこう:02/06/18 01:05
>>136
ソートしてIF関数で上と同じ場合は×そうでない場合は○という式を入れる。
138馬鹿:02/06/18 07:24
>>137
それだと、136のリスト下から2行目の「あああ」が×にならない
>138
(゚Д゚)ハァ?
>>136
○×がA列、文字列がB列として
=IF(COUNTIF(B$1:B1,B1)=1,"○","×")
では?
141名無しさん@そうだ選挙にいこう:02/06/18 11:40
>>140それだと重複しているの全部に×だやな。
>>137がお手軽で妥当

重複のぞいたリストが欲しいならフィルタオプション機能だやね。
これギャルの間じゃ常識。
>141
(゚Д゚)ハァ?
只今より、このスレは

 質問
  ↓
 回答
  ↓
 (゚Д゚)ハァ?

で1000を目指すスレになりますた
144名無しさん@そうだ選挙にいこう:02/06/18 12:22
>143
(゚Д゚)ハァ?
ウィンドウズXPにオフィスXPをインストールしたのですが,
エクセルやワードを立ち上げたり終了する際,
非表示モジュール Auto ExecNew 内でコンパイルエラーが発生しました
とメッセージが出てしまいます。
オフィスを削除・再インストールしたり,アプリケーションの自動修復,
アップデート等行いましたがだめでした。
他にはビジオを入れてあります。
何か良い解決方法がありましたら,ご教授ください。

>>145
VBAを使用できないようなカスタムインストールの仕方をしたとか?
標準インストールでも直らなかったのかな?
147145:02/06/18 15:10
標準インストールしたのですが。
ちなみにソフト自体は普通に使えます。

>>145
Visio が作ったマクロを起動時に実行してるんじゃないけ?
スタートアップフォルダにファイルがあれば移動か削除すれ

Word は 'STRATUP' フォルダ
[ツール] - [オプション] - [既存のフォルダ] タブ - [スタートアップ] を見れ

Excel は 'XLStart' フォルダ
ヘルプで「Excel の起動方法を指定する」と質問しぃ
149145:02/06/18 16:11
148さん
ありがとうございます。
さっそく家帰ったらやってみます。
150名無しさん@そうだ選挙にいこう:02/06/18 17:01
ある整数を、数値が入った複数のセルにランダムで振り分けたいのですが、
どのようにすればよいのでしょう?

具体的には、F16の値が5だとすると、それを色々な数値が入っているE1〜
E10とかにランダムで振り分けたいのです。
欲をいえば、同じセルに1以上は割り振らないとか、できるだけ値の少ない
セルへの割り当てを優先するとかしたいわけですが、とりあえずそういう以
前の問題なので・・・。
使用しているのはExcel2000です。
151150:02/06/18 17:06
あ、割り当ては必ず整数で行います。
つまり、5ならば”1”を5個、各セルに割り当てるということです。
>>150-151
(・∀・)?
>>152
だよね
オレも何を逝ってるのかさっぱりわからん
F16 が 5 ならば E1 〜 E10 のうちのランダムな 5 つのセルに 1 を加算するってことか?
どっちにしても VBA じゃないとムリぽ
もっと上手な説明 or 超具体的な例をあげてくれ
154名無しさん@そうだ:02/06/18 17:41
>>153
カズが入ってるセルに
上書き汁? かねぇ。

155150:02/06/18 17:52
> F16 が 5 ならば E1 〜 E10 のうちのランダムな 5 つのセルに
> 1 を加算するってことか?

そうです。
わかりづらい説明で申し訳ない。

E1=5 E2=10 E3=2 E4=7 E5=9、E6=1と仮定した際、ここに"ある値"、例えば5な
どを割り振るわけです。
この割り振るというのは、それぞれのセルの値に加算するということです。

具体的には、E1=5+1 E2=10+1 E3=2+1 E4=7のまま E5=9+1 E6=1のまま・・・
といった具合です。

この加算がE1〜E6のどのセルに対して行われるかということをランダムにし
たいということなんです。
更に細かいことを言うと、割り振りの際加算するのは必ず1であって、
E1=5+2 E2=....といったような割り振り方はしないということです。

う〜ん、相変わらずわかりづらい説明ですね・・・。

それにしてもVBA使わないと無理なのかぁ〜。


156150:02/06/18 17:54
上の「具体的には、E1=5+1・・・」って書いてあるとこ、間違いです。
これだと4までしか割り当てられていませんね。
重ね重ねスマソ
157145:02/06/18 19:11
治りました!
アクロバットのPDFメーカーとかいうのが悪さしてたっぽいです。
(同じファイル名がありました。)
恐るべしアドビ!
>>155
VBA使わないと無理だろうねぇ。方法が思いつかない。
VBAはまずいの?
159150:02/06/18 20:44
>>155

私がExcelでやろうとしていたのは、最終的にはMSAccessの方で作成す
るシステム全体の中の1部分の簡易版なんです。いきなりAccessで取り
組むより、入り組んだ計算式が必要なところはExcelで試しに作ってみ
てからの方がわかりやすいだろうと思いまして・・・。

ですから、まあVBAまで使わねばならないほどのものであれば、直接
ACCESSの方でやった方が早いかな・・・と。

どうもありがとうございました。
160150:02/06/18 20:45
>>158の間違い
161名無しさん@そうだ選挙にいこう:02/06/18 23:15
>>133 さん、
私、122じゃないけど、
ありがとう!
162多分123:02/06/18 23:24
12345678を桁区切り線を引いて|1|2|3|4|5|6|7|8|のように表示させたい時は
書式設定のユーザー定義の所で?"|"?"|"?"|"?"|"?"|"?"|"?"|"?と入力します。

質問@
最初に上のような設定を定義して、数値を入力しました。(セルの高さはデフォルト)
で、その後に、セルの高さを高くしたら、桁区切り線までは高くならず、上に空きが
できてしまい、体裁が悪いので、セル高を高くすれば自動的に桁区切り線も高くなる
ような設定を教えて欲しい。

質問A
|1|2|3|4|5|6|7|8|の所は主に見積書や請求書で使っていて、=数量×単価
の部分なんですが、この部分の値が0だと、桁区切り線自体が消えてしまう
ので、0でも消えない方法を教えて欲しい。
この部分の値が結果として0の時は0は表示させないようにしていますが、
ツール→オプション→表示→ゼロ値のチェック印を入れる入れないに関わらず、
桁区切り線は消えてしまいます。

この桁区切り線に関しては他にもまだ質問があるのですが、とりあえず、
上の2つだけ、何卒、お願い致します。

163名無しさん@そうだ選挙にいこう:02/06/18 23:35
表示形式は万能ではない。

A1=123456789
B1=MID(A1,1,1) −> 1
C1=MID(A1,2,1) −> 2
・・・・と順次、1セルに一桁ごとばらして表示させて、
桁区切り線は罫線で作り出すのが良いように思ふ。
164多分123:02/06/18 23:56
>>163
御回答頂いて、有難うございます。
せっかく御回答頂きながら、また質問で申し訳ないのですが、
B1=MID(A1,1,1) −> 1
C1=MID(A1,2,1) −> 2
の部分が理解できないのですが、どういう意味でしょうか?
165not 163:02/06/19 00:00
>>164
Mid関数のヘルプを見ると幸せになれると思うよ
166not 163:02/06/19 00:02
>>164
シートへのコピペも可
>>164
163じゃないけど。
A1のセルに目的の数字が入っているとしたら、
その数字をMID関数で一文字ずつ取り出すと言うこと。
結果としてはB1〜J1のセルにA1の数字がそれぞれ1つずつ表示される。
MID関数を知らないならヘルプでも読むべし。
168名無しさん@そうだ選挙にいこう:02/06/19 00:04
訂正します。
数値なので、左から切り出しちゃ拙かった。
A1=123456789
B1=RIGHT(A1,1,1) と入力して→「1」と表示させる
C1=LEFT(RIGHT(A1,2),1) → 「2」と表示
D1=LEFT(RIGHT(A1,3),1) → 「2」と表示
>>162
質問1に関してはセルの高さを変えても文字の大きさが変わらないのと同じで
書式もフォントの大きさによるので当然の現象。
解決法は>>163

質問2はゼロ値のチェックを入れれば解決すると思うんだけど。
(当方Excel2000)
170名無しさん@そうだ選挙にいこう:02/06/19 00:08
セルひとつに値をひとつ入れるってことでしょ

関数は、連続した数字の値 1234.....を
各セルに、ひとつずつ、わけて表示させようとしてるんでしょ
171名無しさん@そうだ選挙にいこう:02/06/19 00:09
また間違い。(T_T
A1=123456789
B1=RIGHT(A1,1,1) と入力して→『9』と表示させる
C1=LEFT(RIGHT(A1,2),1) → 『8』と表示
D1=LEFT(RIGHT(A1,3),1) → 『7』と表示
それでもまだ間違い(w
173名無しさん@そうだ選挙にいこう:02/06/19 00:15
またまた間違い。(T_T もうだめぽ
A1=123456789
  ・
  ・
G1=LEFT(RIGHT(A1,3),1) → 『7』と表示
H1=LEFT(RIGHT(A1,2),1) → 『8』と表示
I1=RIGHT(A1,1,1) と入力して→『9』と表示させる
174163=168=171=172:02/06/19 00:19
桁数が8桁に満たない時のロジックもいれなきゃだわね。
がんばれ!完全版を皆待ってるぞ〜
176名無しさん@そうだ選挙にいこう:02/06/19 00:23
A1 = 12345678

B1=INT(MOD($A$1,10^8)/10^7)
C1=INT(MOD($A$1,10^7)/10^6)



I1=INT(MOD($A$1,10^2)/10^1)

とかはどうよ?(後学のために、どんどんけなしてくれい)
>>133
ありがとうございました。
早速明日バイト先でやってみます。
178名無しさん@そうだ選挙にいこう:02/06/19 00:27
>176

I1=INT(MOD($A$1,10^1)/10^0)

だな
A1がターゲット、
B〜Jまでに1桁づつ入れるとして、

=VALUE(MID(TEXT($A$1,"000000000"),COLUMN()-1,1))
として、オプションでゼロ値のチェックを外すと完璧か?
180多分123:02/06/19 00:33
皆さん、大変親切な御回答、有難うございます。
質問1は文字の大きさを変えたことによって高さの部分は解決できました。
ただ、フォント数を大きくするってことは、横幅も長くなってしまうのですが、
文字(=数値)の縦のみを大きくするってできるんでしょうか?

質問2は何を血迷ったか私の勘違いでした。ゼロ値にチェック印付けたら
簡単に片付きました。

大変有難うございました。

MID関数はこの後、勉強します。
そしてレスは繰り返されるw

163 名前:名無しさん@そうだ選挙にいこう 投稿日:2002/06/18(火) 23:35
表示形式は万能ではない。

A1=123456789
B1=MID(A1,1,1) −> 1
C1=MID(A1,2,1) −> 2
・・・・と順次、1セルに一桁ごとばらして表示させて、
桁区切り線は罫線で作り出すのが良いように思ふ。
>>181
御回答頂いて、有難うございます。
せっかく御回答頂きながら、また質問で申し訳ないのですが、
B1=MID(A1,1,1) −> 1
C1=MID(A1,2,1) −> 2
の部分が理解できないのですが、どういう意味でしょうか?
183名無しさん@そうだ選挙にいこう:02/06/19 00:46
パソコンが無かった時代は、体力と笑顔で乗り切れましたか?
184多分123:02/06/19 00:46
その前に続きの質問なんですが、もしかして、MID関数を勉強した後なら
解決付くような質問だったらすいません。
質問B
一番左端の桁の左側の部分だけ(|1|2|3|4|5|6|7|8|の1の左の部分の空白)
他のに比べて、若干、幅が広くなってしまうので、統一したい。
一番左の線はユーザー定義での設定ではなく、単なる罫線にしています。
試しに今、|?"|"?"|"?"|"?"|"?"|"?"|"?"|"?と入力してみましたが、
(?"|"?"|"?"|"?"|"?"|"?"|"?"|"?では無く)駄目でした。

質問C
|1|2|3|4|5|6|7|8|で言う所の、5|6の縦線、及び2|3の縦線を他の縦線
に比べて太字にしたい。

185多分123:02/06/19 00:49
>>183
その頃は社会人ではありませんでした。
色々御迷惑かけてすいません。
他にも勉強し直して来てから出直します。
>>180>>184の質問4
どちらもフォントの問題。
|の太字というフォントがあれば可能だけど、そうでない限りは>>181に戻る。

質問3は意味がわからん。
>>185(多分123)
マヂレスせんでよろし。ただのネタやから。

それはそうと、"|" と "┃"って機種依存文字?
書式で使えないかなぁ?
全体が9桁の場合に、A1の値をバラバラにして表示 :
1桁目 =LEFT(RIGHT(REPT(" ",9) & A1,9),1) ここが最上位桁
2桁目 =LEFT(RIGHT(REPT(" ",9) & A1,8),1)
3桁目 =LEFT(RIGHT(REPT(" ",9) & A1,7),1)
4桁目 =LEFT(RIGHT(REPT(" ",9) & A1,6),1)
 ・
 ・
 ・
9桁目 =LEFT(RIGHT(REPT(" ",9) & A1,1),1) ここが1の位
フォントはMS 明朝とか、Pの付かない(プロポーショナルでない)物を使用すること。
>189
おつかれ〜
Rept関数を使ってくるとは思っていなかったよ。
>>187
うちからはどっちも見える(Windows MSPゴシック)
機種依存文字でも特定の(使用する)パソコンで見えるなら問題ないような気もしますが。
191多分123:02/06/19 02:18
今、163さんの163書き込みの内容通りにやってみました。
おぼろげながら、漠然とながらですが、わかってきました。
これから、その後も詳しく読んで色々試してみます。

質問3と4はこの方法なら関係なさそうです。
192多分123:02/06/19 02:41
今、>>174
の書き込みの意味まで理解しました。
残りは明日にします。
本当に有難うございました。
193名無しさん@そうだ選挙にいこう:02/06/19 08:05
>>123

りゅーべは、機種依存するけどあるよ
?うにコード33A5
MS付くフォントなら、表示も印刷もできます


194多分123:02/06/19 12:52
昨日の問題がまだ片付かないうちから悪いのですが、
印刷に関してなんですが、
仮に、一枚のシート内で、例えば、1〜20行目+50行目を印刷したいと
します。印刷部分の選択の仕方はわかります。
問題は、これを2ページにまたがる印刷では無く、1ページ内に印刷したい
のです。
195多分123:02/06/19 12:58
194はわかりました。すいません。

193さんは建設関係のお仕事の方ですか?
196193:02/06/19 18:03
>>195
建設業ではありません

「りゅうべい」で変換できたのね。MS−IME
197多分123:02/06/19 20:11
>>196
それでも変換できる事は初めて知りました。有難うございます。
「りゅうべ」「りゅーべ」までは試してみたんですが、正確な
発音が「りゅうべい」と言うのは初めて知りました。
ちなみにATOK14では無理ですた。
ATOK14は文字パレットからでないと入力不可みたい。
俗に「りゅうべ」と発音しますが、立米で「りゅうべい」、平米(u)で
「へいべい」です。
200名無しさん@そうだ選挙にいこう:02/06/19 20:52
A
1 156,501
2 187,812
3 344,313 ←=A1+A2

を【右クリック】−【セルの書式設定】−【表示形式】で
"###,"とし、千円単位で表示させると

A
1 157
2 188
3 344 ←=A1+A2

となり、表示上ではA1+A2=A3とはなりません。
この和を合わせたく、基準を合計であるA3において、
合計させるセルで最も繰り上げ、繰り下げの境に近いものを(上記例ではA1)
実際繰り上げではあるが切り捨てにして、表示上A1+A2=A3にしたいんです。

なにか、いい関数、いい方法はありませんか?
ご教授お願いします。

201名無しさん@そうだ選挙にいこう:02/06/19 20:52
    A
1   156,501
2   187,812
3   344,313 ←=A1+A2

を【右クリック】−【セルの書式設定】−【表示形式】で
"###,"とし、千円単位で表示させると

    A
1    157
2    188
3 344 ←=A1+A2

となり、表示上ではA1+A2=A3とはなりません。
この和を合わせたく、基準を合計であるA3において、
合計させるセルで最も繰り上げ、繰り下げの境に近いものを(上記例ではA1)
実際繰り上げではあるが切り捨てにして、表示上A1+A2=A3にしたいんです。

なにか、いい関数、いい方法はありませんか?
ご教授お願いします。
202ごめんなさい、再び訂正:02/06/19 20:53
    A
1   156,501
2   187,812
3   344,313 ←=A1+A2

を【右クリック】−【セルの書式設定】−【表示形式】で
"###,"とし、千円単位で表示させると

    A
1    157
2    188
3   344 ←=A1+A2

となり、表示上ではA1+A2=A3とはなりません。
この和を合わせたく、基準を合計であるA3において、
合計させるセルで最も繰り上げ、繰り下げの境に近いものを(上記例ではA1)
実際繰り上げではあるが切り捨てにして、表示上A1+A2=A3にしたいんです。

なにか、いい関数、いい方法はありませんか?
ご教授お願いします。
203教えてください:02/06/19 21:21
教えてください。
OSはWIN95、エクセル97です。
エクセルのワークシートで作成した資料を
その資料丸ごと、ビットマップ画像として変換したいのですが、
どうすればいいんでしょうか?

オートシェイプやワードアートを沢山入れて作成しており、
なんとかこのままのカラフルな状態を、画像として
会社のマニュアルとして使いたいのです。
お願いします。
>>203
プリントスクリーン
>>202
いまいち、長くてよく理解できないのだが、
A1=ROUNDDOWN(156501,-3)ということ?
206202:02/06/19 22:03
>>205
いえ、手動でやるんではなくて、IF関数などを使って
自動で上記で申したようにできないものかと・・・。
四捨五入後の千単位以上の合計が、
一単位の合計を四捨五入して千単位にしたものとは違う場合に
IF関数などを使って自動に・・・、ということです。
207多分123:02/06/19 22:09
>>179
有難うございます。
たった今、179さんのやり方で試してみましたが、新たな問題点が
生じてしまいました。
C1をターゲット(=A1×B1=数量×単価)でやってみたんですが、
結果として、C1の値の「低い位に0」が入ると(例えば40,000とか)
4しか表示されません(ゼロ値チェック外した場合)。
かと言って、ゼロ値チェックをオンにすると「00040000」みたいに
なってしまいます。

176&8さんのやり方はまだ試してないので、これからやってみたいと
思います。
208多分123:02/06/19 22:29
>>176
176さんのも試してみましたが、同様の結果でした。
最初に書いた???のやり方で良しとするしかなさそうですね。
大変お世話になりました。有難うございました。
>>202
画面上A3=A1+A2でいいなら、スマートな回答ではないけど、
A3=IF(ROUND(A1,-3)+ROUND(A2,-3)=ROUND(A1+A2,-3),ROUND(A1+A2,-3),ROUND(A1,-3)+ROUND(A2,-3))
210名無しさん@そうだ選挙にいこう:02/06/19 23:17
>208

B1 =IF(A1<10^7,"",INT(MOD(A1,10^8)/10^7))
C1 =IF(A1<10^6,"",INT(MOD(A1,10^7)/10^6))



I1 =IF(A1<10^0,"",INT(MOD($A$1,10^1)/10^0))


にしてみるとか・・・
>123さん
188さんのやり方なら、「ゼロ」と「空白」が使い分けてあるから、
問題ないはずですよ。
ゼロ値の表示はONでね。
212202:02/06/19 23:25
>>209
A3を一単位の四捨五入の値そのままで、A1、A2のどちらか(繰上げ、切捨ての境に近い方。上の例ならA1)の
値を変えて、A1+A2=A3とすることはできませんか?
ノーマルEXCELではできなくても、BVAを使えばできたりするもんなんですかね・・・。
>>202
>A3を一単位の四捨五入の値そのままで、A1、A2のどちらかの値を変え
ると、循環してしまう。他のセルに移らないと無理かな。
VBAなら可能。
214202:02/06/19 23:35
>>213
VBAをつかうのにはvisual basicが必要なのですか?
それとも、office単体(officeの追加インストール等)で
いけるんですか?
215多分123:02/06/19 23:47
188さんのやり方試すの忘れてました。
今からやってみます。
216名無しさん@そうだ選挙にいこう:02/06/19 23:53
すみません。ちょっと教えて下さい。
先日から家でセコセコ作って、初めてユーザフォームからデータを
良い感じに入れられるのを作ったのですが、家のペンIII800MHzマシンでは
一瞬の出来事で分からなかった、データ書き込み時のSheet入れ替え(串刺しにしてます)が
会社のマシンではあからさまにパッ、パッと変わってすごい時間がかかります。
これは何かコツがあるのでしょうか。その他に、何かこれやったら早くなるぞ、って事ありますか?

>>214サン
Excel使用時にAlt+F11を押してみて下さい。VBEが起動します。
ちなみにVBAのヘルプは標準インストールじゃ入らないので、
別途インストールする必要があります。
217202:02/06/19 23:57
>>216
ありがとう。
>214
そのままで、できます。
219名無しさん@そうだ選挙にいこう:02/06/19 23:59
合計の精度を優先したいってことだよね?

新しい表示用のセルを作るなら

B1 = A1-500*AND(MOD(A2,1000)>=MOD(A1,1000),MOD(A1,1000)>=500)
B2 = A2-500*AND(MOD(A1,1000)>MOD(A2,1000),MOD(A2,1000)>=500)
B3 = A1 + A2

こんなんとか・・・

見当違いなことしてたらスマソ
>216
根本的にマシンスペックの壁は大きいけど・・・
Application.ScreenUpdating = False
これを入れておくと画面切り替えが行われないので、多少はスピードアップする。
後は、他のブックやアプリを閉じておくとかか。

221216:02/06/20 00:14
>>220
どもです。
明日会社でやってみます。
ブックがいっぱい開いているとダメなのか…。設計ミス…かな(w
222多分123:02/06/20 00:19
やっと思い通りにできました。
ありがとうございました。
ただ、参考までにお聞きしたいのですが、
1.何故、Pの付かないフォントを使用しなければならないのですか?
試しに、MSP明朝体とかMSPゴシック体でもやってみましたが
特に問題があるようには見えませんが。

2.ゼロ値のチェック印をOFFでも試してみましたが、問題あるようには
見えないんですが(ONでもOFFでも表示は変わらない)、何故ONなのですか?
後々、又は、その他の部分とかもろもろ考えた場合、OFFだと何かしらの
不具合出るってことですか?
簡単にマクロを使ったデーターベースつくりを1から始めたいのですが
まずは参考リンクなどありましたら教えて下さい。
224188:02/06/20 01:06
>>222
P付きかP無しか :
以前かかれてた「1の隣の空白が気になる」っていう問題への配慮のつもりでした。
今試しましたが、セル内に1文字だけとあまり気になりませんね


ゼロ値表示について
例えば A1 に 0 を入力、
B1 には式 「 = A1 & "TEST" 」 を、C1 には 式 「 = A1 & "" 」 と入力し、
ゼロ値表示のチェックをオン/オフして試してみてください。

B1とC1は A1の後ろに「文字」をくっ付けた為に、Excelはこれを数値ではなく
文字として解釈しますので、ゼロ値表示の設定に影響を受けません。

>>188の方法でも、同じようにそれぞれの桁の値を文字列として表示しています。
このため表示オプションのゼロ値チェックには関係なく動作しますので、
ゼロ値表示設定はどちらでもOKです。
225名無しさん@そうだ選挙にいこう:02/06/20 01:09
Excel総合相談所6
http://pc.2ch.net/test/read.cgi/bsoft/1023811906/

エクセルVBA質問&研究板
http://pc.2ch.net/test/read.cgi/bsoft/1008219498/
226多分123:02/06/20 01:16
>>224
試してみます。が、明日にします。(すいません。寝不足続きなんで
今日はもう寝ます)
ありがとうございました。
227名無しさん@そうだ選挙にいこう :02/06/20 11:28
Excel95のシートとブックの保護を解除したいのですが、
PassクラックツールはExcel97以降なので駄目でした。
 他にないのでしょうか?
以下のプロシージャをThis Workbook のコードに入れてしまいました。
どうすれば修正できますか?お願いします。

Private Sub Workbook_Open()

Application.DisplayAlerts = False
Application.Quit

End Sub
>>228
マクロを無効にして開けばいいのでは。
230名無しさん@そうだ選挙にいこう:02/06/20 15:05
右方向へのオートフィルをかけたいのですが、どこからはじめてもZ列で終わるオートフィルにするにはどのようなVBをかけばよいのでしょうか?
231名無しさん@そうだ選挙にいこう:02/06/20 15:33
小数点以下を切り捨てにしたいのですが、どのような作業を踏めば
いいのでしょうか?

今の設定だと、どうしても四捨五入になってしまいます。
232名無しさん@お腹いっぱい。:02/06/20 16:52
>>231

TRUNC ワークシート関数
INT ワークシート関数
ROUNDDOWNワークシート関数
233名無しさん@そうだ選挙にいこう:02/06/20 17:10
>>230

Set baka = Selection 'Range("A1:B2")とかの好きな範囲でもいいよ
Set aho = Cells(baka.Row + baka.Rows.Count - 1, "Z")
Range(baka, aho).DataSeries xlRows, xlAutoFill

234名無しさん@そうだ選挙にいこう:02/06/20 17:28
>>233
ありがとうございます。
235名無しさん@そうだ選挙にいこう:02/06/20 17:42
質問なのですが
Excellでグラフを書いたときに
グラフの軸に
0.0003を
3.0E-4 
とのような表示ではなく
10の右肩に小さく-4 とつけたいのですが
教えていただけませんか?
既出だったらすみません。

No5 のすれが見れないので。
236名無しさん@そうだ選挙にいこう:02/06/20 18:36
>>202
VBA方式と関数方式の二種類を考えました。
数値を千単位に表示については、セルの表示形式から設定。
A1 = 数値1
A2 = 数値2
A3 = A1+A2

なお、この問題の出口は以下の5通りに分かれます。
1)、無調整でよい
2)、A1を切り上げる
3)、A2を切り上げる
4)、A1を切り下げる
5)、A2を切り下げる
237236 (VBA方式):02/06/20 18:38
Sub abc()
a = Range("A1").Value
b = Range("A2").Value
c = Range("A3").Value
ra = Application.Round(a, -3)
rb = Application.Round(b, -3)
rc = Application.Round(c, -3)
lal = Abs(a - ra)
lbl = Abs(b - rb)

Select Case rc
Case Is > ra + rb
If lal > lbl Then
Range("A1").Value = Application.RoundUp(a, -3)
Else: Range("A2").Value = Application.RoundUp(b, -3)
End If
Case Is < ra + rb
If lal > lbl Then
Range("A1").Value = Application.RoundDown(a, -3)
Else: Range("A2").Value = Application.RoundDown(b, -3)
End If
End Select
End Sub

調整が必要で 『lal=lbl』 の時は 『A2値』が変更されます
もし、この時『A1値』の変更を優先するなら、『lal>=lbl』として下さい。
これをボタンに登録するか、イベントマクロに直すかで実行させる。
238236 (関数方式):02/06/20 18:40
B1 = IF(ROUND(A3,-3)=ROUND(A1,-3)+ROUND(A2,-3),A1,IF(ROUND(A3,-3)>ROUND(A1,-3)+ROUND(A2,-3),IF(ABS(A$1-ROUND(A1,-3))>ABS(A2-ROUND(A$2,-3)),ROUNDUP(A1,-3),A1),IF(ABS(A1-ROUND(A1,-3))>ABS(A2-ROUND(A2,-3)),ROUNDDOWN(A1,-3),A1)))

B2 = IF(ROUND(A3,-3)=ROUND(A1,-3)+ROUND(A2,-3),A2,IF(ROUND(A3,-3)>ROUND(A1,-3)+ROUND(A2,-3),IF(ABS(A$1-ROUND(A1,-3))>ABS(A2-ROUND(A$2,-3)),A2,ROUNDUP(A2,-3)),IF(ABS(A1-ROUND(A1,-3))>ABS(A2-ROUND(A2,-3)),A2,ROUNDDOWN(A2,-3))))

B3 = B1+B2

改行が入ってるかもしれませんが、つながってます。
別セルにコピペする時は、式中のセル参照に気を付けて下さい。
ROUND や ABS の数学(計算)関数中のものと、表示させるための式部分のものでは、相対させ方が違います。
($)では完全に対応させれませんでした。
セルをもっと使って、VBA方式のように計算部分を式から出したほうが、すっきりするしセルの相対性も保てると思います。

VBA同様、『A2値』変更での調整が優先されます
239236 (感想):02/06/20 18:42
多分123さんの表示問題もこれも、簡単なのに落とし穴があって表現すると回りくどく感じる。
すなわち、たわいなさそうなモノほど人間の捉え方と機械の進め方との違いがはっきり出やすいのだな、と。
「1+1=2」の証明みたいなもん?
どちらもパズルみたいで面白かったけど、
「端数処理の関係で、各欄の計が「合計」と一致しない箇所がある。」の注意書きの効率性?を体感。
こんなレベルじゃない世のプログラマーさん達、ご苦労様です。

勉強になりました。まだ抜けてる所があったら、ご指摘ください。
長文失礼しました。
240名無しさん@そうだ選挙にいこう:02/06/20 18:49
>>235
グラフの設定では無理。テキストボックスを使うのが定法。
Excel2002とかでは出来たら、ゴメン。
241質問:02/06/20 19:42
A4横のページ設定の時に、左端に縦にページ打をする方法を
教えて下さい。
EXCEL2000でページのイメージは例えば、2−1−4
の様な感じです。
(要するにexcelで作った表を他の文章や画像と一緒に、
 A4縦に製本したいのですが、現在は一ヶづつ枠を挿入して
 数値を入力てな感じでやっています)
242名無しさん@そうだ選挙にいこう:02/06/20 19:51
単純な質問でスイマセンが以下のように
1つのセルに2つの単語をずらして入力するにはどうしたらいいのでしょうか?
-----------------------
|あああああ |
|       あああああああ|
-----------------------
243名無しさん@そうだ選挙にいこう:02/06/20 20:05
>>242
Alt+ENTERでセル内改行が出来る。
あとはスペースでも入れれ。
244名無しさん@そうだ選挙にいこう:02/06/20 20:08
セル内の改行は、[alt]+[enter]。
2行目の頭にスペースを適量。
ごめんさい >243
リロードを怠りますた。
246202:02/06/20 20:29
>>236
丁寧に説明してくれてありがとう。
ええ人や・・・。
247202:02/06/20 20:37
>>236
VBA方式、試してみました。
すばらしいですね、これ。
VBA始めようと思いました。皆さん、何かお勧めの本はない?
248242:02/06/20 20:41
>>243
>>244
有難う御座います。分からなくてずっと悩んでいたんですぅ。
249235:02/06/20 20:47
>>240
ありがとうございます。
エクセルでは出来ないんですか残念。
テキストボックス使ってみます。
250名無しさん@そうだ選挙にいこう:02/06/20 21:10
 セキュリティ版からここに来いと言われてきました!!!
Excelクラックツールを見つけたのですが、ダウソしても使い方が
いまいち分かりませんでした。自分の作ったファイルのシートとブックに
パスワードをかけたのですが、忘れてしまいました。どなたか知力の
ある方、教えてくださいませ。平に平にお願いいたします。


http://www.geocities.co.jp/SiliconValley-Oakland/8051/excelcrack.zip
251名無しさん@そうだ選挙にいこう:02/06/20 21:29
>>250
パスワード忘れるような馬鹿は死ね。
どうしても復帰したきゃ業者に金払って復帰しろ。
保護したくてパスワードかけてる人も大勢いるのに破る方法なんかを
馬鹿の集まる掲示板でさらせるか。
クラックソフトのリンクを張った時点でお前はどうかしてる
252名無しさん@そうだ選挙にいこう:02/06/20 21:35
>>250
しかもZIPファイルに...
本物のヴァカだ...
253多分123:02/06/20 23:39
昨日は色々と有難うございました。
違う質問なのですが、セルの位置に関係なく、文字や線を入れたい
時って、図形描写押して、線引いたり、テキストボックス使って
入力しますよね。ここまではできるんですが、その線や文字を
消す方法がわからなくて困ってます。
線の長さやテキストボックスの枠をを最小限まで縮めても、
始点と終点を現す四角い印までは消えませんよね。
できれば、その□と言うか、図形描写で入力した、そのものを
消したいのですが、どうすればいいんでしょうか?

>>253
線なしを選択するということ?
255名無しさん@そうだ選挙にいこう:02/06/20 23:51
選択して、delete 
ってことじゃねーよな?
>>253(多分123さん)
毎日ご苦労様です。
その図形などをアクティブにした状態で、[Delete]。
または右クリックして、「切り取り」。
257多分123:02/06/21 00:07
わかりました。できました。
テキストボックスの場合、線のあるところで右栗切取しなくちゃ
駄目だったんですね。枠内でやってました。
有難うございました。
>257
えっ? 枠内でも枠上でも、構わないっしょ!?
259多分123:02/06/21 00:54
いえ、枠内で切り取り押しても消えませんよ。→テキストボックス
線のあるところにカーソル合わせないと。
260256=258:02/06/21 01:06
あ〜、なるほど。
枠内だとテキスト(内容物)に対する編集モードになってるわけやね。
失礼しました。
261名無しさん@そうだ選挙にいこう:02/06/21 18:59
積上げ棒グラフを作る際に、元データのワークシートに手を加えずに
数値の大きい順に表示させたいのです。
どうすればできるかお教え下さい。
262名無しさん@そうだ選挙にいこう:02/06/21 20:24
シートを変更するショートカットキーを教えて。
Ctrl+(PgDn or PgUp)
264262:02/06/21 20:35
>263 ぽ。
265名無しさん@そうだ選挙にいこう:02/06/22 00:54
CTRL+Cでコピーしたセルを
形式を選択して貼り付け→値
の形で貼り付けるショートカットキーってあるんですか?
266名無しさん@そうだ選挙にいこう:02/06/22 00:59
教えて下さい。

エクセルで画像を貼り付けた場合って最背面に設定してもセル入力はできないのでしょうか? 
例えば日本地図の画像を取り込んで来てエクセルに貼り付けたとして、
画像と重なっているB12のセルに「東京」とか打ち込むようなことがしたいのですが
貼り付け方や設定等で可能なのでしょうか?色々試してみたつもりなのですがどうしても
画像を貼り付けた真下にあるセルへの入力が出来ませんでした。
ご存知の方がいたら教えて下さい。
>265
マクロを組んで、ショートカット登録するとか。
だめ?
>266
ちと違うが、シートの背景にする
269名無しさん@そうだ選挙にいこう:02/06/22 01:09
>>267
サンクス
それは思いついたんだけど、
結構いろんなbookで使ったりするのよ。
既存の機能として用意されていないのかなと。。。
270名無しさん@そうだ選挙にいこう:02/06/22 01:11
ん?それともEXECL登録することができるのか?
271名無しさん@そうだ選挙にいこう:02/06/22 01:12

ん?それともEXECL登録にすることができるのか?
の間違いです、スンマセン
272名無しさん@そうだ選挙にいこう:02/06/22 01:13
また間違った欝だ。。。
ん?それともEXECLに登録することができるのか?
が正解
273266:02/06/22 01:15
>268 
 
即レスどうもです。 
シートの背景にするとは?すいませんやり方がわかりません。
当方97SR2です。(自宅マシンにはエクセルが無いので確認できません)
後、欲を言うと印刷の際には画像を印刷して欲しくないです。
オブジェクトを印刷の対象から外すやり方で背景にした場合も逃げれるでしょうか?
>>273
EXCEL97は知らないけど2000なら 書式>シート>背景で挿入できる
背景画像は何も設定しなくても印刷されないから条件にぴったりだね。
>>272
個人用マクロブックに登録するとブックに関係なくマクロが使える
あとはアドインと言う手もある。

あ、ちなみにEXECLじゃなくてEXCELね。
>>272
ツールバーを右クリック>ユーザー設定>コマンドタブ>編集から
値の貼り付けボタンをツールバーにD&Dして追加すれば?
277268=273:02/06/22 11:38
>274

どうもです、月曜会社逝ったらやってみます。
278名無しさん@そうだ選挙にいこう:02/06/22 12:56
>265
alt-e-s-v-enter
よく使ってます
279名無しさん@そうだ選挙にいこう:02/06/22 12:58
>266
白地図なら白を透過色にすれば後ろの文字が見えるよ。
マウスで図の後ろのセルの選択はできないかもしれないけど
キーボードや名前ボックスを使えば可能。
280名無しさん@そうだ選挙にいこう:02/06/22 14:10
>>265
値の貼り付けをキーボードで
http://www2.odn.ne.jp/excel/waza/toolbar.html#SEC21
>278
私の場合、Application-s-v-enterですが、何か。
>281
それが何か?
>>280
そのやり方は知っていたんだけど、
Alt+Vが表示(V)とダブっているのと、Ctrl+Shift+Vで値貼付をしたいから

メニューバー登録したショートカットをCtrl+Shift+Vにする方法はあるのかな?
284名無しさん@そうだ:02/06/22 16:55
>>261
まず、別のシートにコピーする。
次に、そのシートで並べ替えする。
最後に、並べ替えの結果でグラフを作って ウマー(゚Д゚)
285a:02/06/22 22:03
学校で今年検定を受けるから
家でエクセルをやりたいんですけど
エクセルってどうやって手に入れるんですか?
ホームページにおちてるんですか?
店に売ってるんですか?
286名無しさん@そうだ選挙にいこう:02/06/22 22:38
氏ね
287:02/06/22 22:55
店で売ってます。
PCを買うと、知らないうちに入っている事もあります。
落ちているもの拾って届けないのは、拾得物横領、といいます。
ホームページで拾った場合は、抽選でお巡りさんとの対談が当ります。
288名無しさん@そうだ選挙にいこう:02/06/22 23:44
エクセルの画面でセルとかの上の数式バーとかあるところに右よせとか
左よせとかあったのに消えてしまいました。どうすれば表示できるか教えて下さい。
289265:02/06/23 00:28
個人用マクロブックとやらで実現できました。
皆さんどうもありがとん。
290名無しさん@そうだ:02/06/23 00:31
>>288
そのへん右クリ。
グリグリ弄ってどうにかしてみぃ
291265:02/06/23 00:32
>>288
表示>ツールバー>書式設定
292名無しさん@そうだ選挙にいこう:02/06/24 09:43
つまんない質問ですが、助けてください。
オートフィルタがうまく機能しません。
15000行・30列ほどの表からデータを抽出したいのですが、
どうも重たそうで、砂時計が消えてくれません。
ブックを強制終了するしかなく、困っています。
OS・エクセルはXP、CPUは11.4ギガ、メモリは384メガですので、
ハード的には問題なく作動するとおもうのですが・・・。
また、当該ブックは11メガの大きさです。
どなたか、オートフィルタを軽く作動させる方法を教えてください。
293名無しさん@そうだ選挙にいこう:02/06/24 09:53
フィルタをいろいろ弄っているのですが、「特定の文字列を含まない」という抽出条件は
設定できないのでしょうか?
ヘルプを死ぬほど見たつもりなんですが、どうも該当の演算子が無くて・・・
294名無しさん@そうだ選挙にいこう:02/06/24 11:18
>>292
表を分けるしかなさそうだね。それか抽出⇒転記ならフィルタオプション
でやってみたら

>>293
どこ調べたら見つからないんだそれ?ヘルプにかいてあんじゃん
<>"*文字列*"だよ。
11.4GのCPUってでてたんだ・・・
296292:02/06/24 12:12
>>>294
フィルタオプションを使用してもでも同じ状態です。
>>>295
1.4の間違いです。

フィルタを使用しなくても良いのですが、
何か良いデータの抽出方法はないでしょうか?
今さらACCESSで作り直すのはムリですし・・・
297名無しさん@そうだ選挙にいこう:02/06/24 12:22
>>296
データの部分だけ別シートに切り離して抽出は
Query(外部データの取り込み機能)でやったら?
Accessとかわんないけど。

>今さらACCESSで作り直すのはムリですし・・・
技術があるならこういう無駄な抵抗をするくらいなら
ちょっとがんばって作り直したほうが結局早いぞ。
298293:02/06/24 12:54
>>294
>どこ調べたら見つからないんだそれ?ヘルプにかいてあんじゃん
><>"*文字列*"だよ。

申し訳ありません出来ました。
「<>*文字列*」もしくは「<>文字列」
が正解ですね。今まで
「<>"文字列"」とか「<> 文字列」とか「not("文字列")」とかやってたのが原因でした。
              ↑
             ※半角スペース

いやお恥ずかしい。ヘルプでは文字列を使った場合の否定式例が無かったので・・・
299268=273=277:02/06/24 19:27
>274
> EXCEL97は知らないけど2000なら 書式>シート>背景で挿入できる

今日やってみました。が残念ながら考えていた状態にはなりませんでした。
例えばA4サイズに印刷できる範囲がA1:F70だとした場合、その大きさに
丁度収まる形で背景として表示されてくれるようなイメージで考えてました。
背景となる画像データをピクセルで指定してサイズ調整してから貼り付けてみたのですが
これ!というサイズにあわせるのが難しいです・・・
後、シート倍率を200%にしても背景は2倍にならないんですね
 
背景となる画像サイズが実際の印刷サイズに連動してくれてない(当たり前か)
上に自分で背景に貼り付けてからのサイズ調整も出来ないから難しそうですね。
 
>266
>白地図なら白を透過色にすれば後ろの文字が見えるよ。
>マウスで図の後ろのセルの選択はできないかもしれないけど
>キーボードや名前ボックスを使えば可能。

テキストボックス、名前ボックスではうまくないんです、計算式も打ちこみたいんで。
テキストボックスなら画像を最背面にしておけばいくらでもできるんですが。

実は考えていたのは会社の独自フォームの専用伝票にあうようにセルの幅とか
入力式を調整して打ち出すための方法だったんですが、どのセルにどう打ち込むと
うまく用紙とピッタリ合うのか位置あわせが難しくって。
なんかうまい方法ないのかなぁ・・・
>>299
背景画像をA4サイズに作りかえればいいのでは?
301多分123:02/06/24 20:02
EXCEL単体の機能内で、できるかどうかわからないのですが、
外字作成って、できるんですか?

「株式会社」と言うのを、一字に収めたいのです。
具体的には、一字を上下左右に分けるとして、
左上→株 右上→式
左下→会 右下→社
のようにしたいのです。
EXCEL単体で無理なら、WORDの機能を使っても構いません(ただし、
WORDで作成した外字をEXCELで使えることが前提)。
よろしくお願いします。
もし、どっちでも無理なら、そういうソフトで(できればフリーソフト)
お薦めってありますか?
>>301

IMEのUnicode文字にはじめから用意されてるけど・・・
>>301
外字じゃないけどワードアート使うってテもある
304多分123:02/06/24 21:48
>>302
気付きませんでした。
ありがとうございました。
今日初めて、IMEパッドを使いました。

ワープロ(シャープ)には㍿があるんですが、
エクセルに無いのは仕様で仕方の無いことかと
あきらめかけていました。

本当に有難うございます。
305エクセル97です:02/06/24 23:25
他のHP等検索したのですが、分からなかったためご質問いたします。

あるブックの複数のシートを、それぞれのシート名をブック名とした複数の
ブックとして保存するマクロはございますか?

例えば、あるブックの中に、sheet1、sheet2、sheet3という
3つのシートがあるとします。
この3つのシートをそれぞれsheet1.xls、sheet2.xls、sheet3.xls
といったブックとして保存したいのですが・・・
手作業で新しいブックへの「シートの移動」→シート名をコピー→名前をつけて保存→
ファイル名をシート名に変更 を3回繰り返せばよいのですが、
マクロを使ってうまく自動化させたいのです。
VBAの知識が全くないので、幼稚なことを聞いてしまっているのかもしれませんが、
どなたかお分かりになる方、お答えくださいますと幸いです。
>>305

一度保存した事あるブックが対象

Sub aaa()
Dim ws As Worksheet

For Each ws In Worksheets
 On Error Resume Next
 ws.Copy
 ActiveWorkbook.SaveAs (ThisWorkbook.Path + "\" + ws.Name)
 ActiveWorkbook.Close
Next ws

End Sub
307エクセル98です:02/06/25 01:29
質問なんですが
例えば、[ツールバー]→[フォーム]にあるチェックボタンのオン、オフ
で(A1)のセルに画像を出したり消したりできますか?
VBAでやろうとしているのですがコードが分かりません。
何かアドバイスをお願いします。
308エクセル97です=305:02/06/25 02:14
>>306 さん
ありがとうございました!!
VBAの内容は理解できていないのですが、ともかくできました!!
これで、今後の作業が数段はかどります。
VBAの勉強をはじめてみたくなりました!

309名無しさん@そうだ選挙にいこう:02/06/25 07:13
webクエリを使ってオークションの自分の出品物の状況を自動更新で取り込みたい
のですが、出品物のurlは出品するたびに毎回変わるのでそのつど、urlの設定を
しなくては取り込みできないのですが、これをVBAなどで自動的に取り込むには
どういった手順でやればいいのでしょうか?
310名無しさん@そうだ選挙にいこう:02/06/25 12:29
>>309
無理。どういうURLになるかはオークションのサーバ側の
コードによって規則が違うからわからん。規則が分かればできるんじゃない

それより素直にVectorとかで監視用のフリーソフトでも落としたほうが早い
311エクセル98です:02/06/25 13:15
セル内に英字5文字(例として(ccc-1))を入力したときに、後ろ2文字(-1)の文字色を白になるようにしたいのですが・・・。
今の考えでは、セルの表示形式のユーザー定義で何とかならないかなと思ってます。
でも、形式が分かりません教えてください。 また、別のやりかたがあれば宜しくお願いしたす。
312名無しさん@そうだ選挙にいこう:02/06/25 13:15
173 :参加するカモさん :02/03/12 09:46
みんなメルマガ読んでる?
あれ読むとひろゆきの性格よくわかるよ
すっごい陰湿。
根暗。
正直、引くよ。2chの管理人って、こういう奴なのかって。

176:参加するカモさん :02/03/12 11:18
ひろゆきの裁判の報告の仕方はよくわかったけど、たまには相手側の言い分も聞いてみたいね
まったく違う状況だったりしてw

177:参加するカモさん :02/03/12 11:42
ひろゆきさんっては自分の都合の良いことしか報告しないし、都合が悪くなると
報告しなくなっちゃうんだよね、、
それにしてもひろゆきさんてば見事に陰湿な文章書くなあ。。
313名無しさん@そうだ選挙にいこう:02/06/25 13:22
>>309
手順としては、出品物一覧のページ
Yahoo! Auctionsならhttp://user.auctions.yahoo.co.jp/jp/user/自分のID?
をまず取り込んで、そこから出品物のurlを読めばいいと思うけど、
複数ページになったりすると面倒だな。
314名無しさん@そうだ選挙にいこう:02/06/25 15:04
《マジで緊急事態!!》
http://fifaworldcup.yahoo.com/jp
日本人が投票したとわかるシステムです。
 『スケート以外に投票して下さい。』
現在、日本在住朝鮮人の投票なのか、なぜか日本の投票でもスケートが一位です。
このままだと日本人が世界の敵になります。

『世界が推薦⇒宙返りのジュリアス・アガホワ』
↑これが良いでしょう。だってあの宙返り、かなり凄かったし。

コピーして仲間を増やしてください 
マジやばいです、日本まで一緒にされて"世界から非難されます"
315名無しさん@そうだ選挙にいこう:02/06/25 21:34
ある人がある商品を何個買った(例、Aさんが○を2個、◆を4個、×を3個、
Bさんが◆を3個、×を1個買う)とかいうのを下の表のようにした時、
A ○ 2
A ◆ 4
A × 3
B ◆ 3
B × 1
○や◆や×の総合計をうまくあらわす方法ないでしょうか?
>>315
Sumifワークシート関数を使ったら?
317名無しさん@そうだ:02/06/25 22:12
>>307
まぁ、自分の手で動かす手順を
「マクロの記録」で記録し、再生して、
VBAのコードを見てください。

ハナシはそれからダ。
>>316
あ、出来た。ありがとう!
SUMIF関数に何で気付かなかったんだ、俺・・・
319名無しさん@そうだ選挙にいこう:02/06/25 22:49
VBAでアプリ作った後、手でSheet変えられなくしたり、
メニューバーやツールバーを制限したりするのはどうやったら良いのですか?
320名無しさん@そうだ選挙にいこう:02/06/26 01:03
2000で作成済みのファイルが数十個あり、それを97でも開けるよう保存したいのですが、
手動で一つずつでは大変なので数十のファイルを一括でバージョン変換できるツールとかないですかね?
321名無しさん@そうだ選挙にいこう:02/06/26 06:28
>>320
Saveasで97形式を引数に指定して、VBAでループさせるだけ。
322エクセル98です:02/06/26 10:51
セル内に日付を入力し、そのファイルを開いた時、日付が当日または過ぎているものにかんしては、セルに色をつけたいのです。 [条件付き書式]の[数式が]でやりたいのですが・・・
当日だけなら「=TODAY()」で出来るのですが・・・
guest guest
>>322
なんで[数式が]の方でやりたいのかわからないけど
(A1セルに条件付き書式をつける場合)
=TODAY() > A1
にしてやればいいんでは?
325324:02/06/26 12:42
ああ、当日も含むなら
=TODAY() >= A1
だな
326エクセル98です:02/06/26 13:14
>>324
>>325
ありがとうごさいます。 勉強になりました。
やりたい事は、頭に浮かぶのですが、なんせ技術がおっつかない。日々勉強ですね。
みなさんオススメのエクセルの本やサイトはありますか。
(作るものにもよってもかわりますが)
参考にしたいのです。
327名無しさん@そうだ選挙にいこう:02/06/26 14:36
excel2000を使っています。背景色を白から黒に変えることはできるでしょうか?
昔のDOSのような画面のほうが見てて疲れないので。方法があれば
お願いします。
328名無しさん@そうだ選挙にいこう:02/06/26 15:47
質問です。
あるワークシート(データ)のQ列において、
セルの内容が#N/Aの場合は、S列になにも記入しない。
セルの内容が#N/Aで無い場合(数字が入ってます)は、S列に
別のワークシート”更新”の”C数字”セルの値を代入する
というようなことをしたいのですが、どうやったらいいでしょうか?
たとえば、

”データ”ワークシートのQ列において

   Q S
11 #N/A
12 192
であったとします。

そして、同じブック内の別のワークシート”更新”において
C
192 2001/12/17
であったとします。

この場合
データワークシートのにおいて

   Q S
11 #N/A
12 192  2001/12/17

となるようにしたいのです。
お願いします。

329名無しさん@そうだ選挙にいこう:02/06/26 16:57
マクロを適当にいじっていましたところ、
Sub 」()

End Sub
なる変なマクロができてしまいました。
むかついたので、
ALT+F8でマクロを開いて削除しようとしたのですが、削除ボタン
が有効になりません。
そこでMSN Visual Basicをひらいて、そのマクロのモジュールとやらを解放したり
マクロを消して、上書きした上で、確認してもまだ存在します。
かなりうざいです。
どうやったら消せますか?
330名無しさん@そうだ選挙にいこう:02/06/26 17:00
表計算する時にあるセルある式を使う時に
普通は「A3*A4」とか代入して計算しますよね。
ところが自分のパソコンだと列の記号がアルファベット
ではなく数字になっているので計算が出来ないんですが
どうやればなおるのですか?
それともこれはバグですか?

OSはWindows Me
バージョンはExcel 2000

です
331名無しさん@そうだ選挙にいこう:02/06/26 17:50
EXCEL2000でWin2000で使用中です

すみません変な質問なんですが
塗りつぶしているセルの数を集計する方法ってありますでしょうか?

□■■■□□□□■■■
□□■■□□□■■□□
□□□□□□□□■■■
↑のようにセル一つ一つを塗りつぶしていて
その塗りつぶしているセルの数を集計したいのですが


□■■■□□□□■■■  6
□□■■□□□■■□□  4
□□□□□□□□■■■  3

↑のような感じにしたいのですが、
もしできるようでしたらよろしくお願いいたします。
332名無しさん@そうだ選挙にいこう:02/06/26 18:26
Excel 2002を使ってます。
下記のシートからデータを抽出したいと考えていますがvlookup関数を利用
してデータを抽出する方法で悩んでいます。

A列(仮に変数Aとする)B列(仮に変数Bとする)の変数を指定してC列の
データを引っ張ってこようと考えています。
例えばbの2と指定した場合には345とデータの抽出という感じです。
vlookup(変数A,A:C,3,false)
からいい方法が思いつきません。

vlookupを利用して、又は利用しないでいい方法はないでしょうか。

【元データシート】
-|A|B| C |
1|a|1|123|
2|a|2|456|
3|a|3|789|
4|b|1|012|
5|b|2|345|
6|b|3|678|
7|c|1|901|
8|c|2|234|
9|c|3|567|
333320:02/06/26 18:43
>>321
VBAですか・・・スキルないんで簡単にできるツールがないかなと思ったんですが。。
んでもVBA使えるようになればできるって事がわかっただけでも参考になりました。ありがとう
(´-`).。oO(VBAべんきょうしてみるかなぁ・・・)
>>328
=IF(ISNA(Q11),"",INDIRECT("更新!C" & Q11))
こんな感じ?
>>330
計算式を R3C1*R4C1 と書くか、
ツール→オプション→全般の
□ R1C1 参照形式を使用する
のチェックを外す。
>>331
塗りつぶすって色の何かの色が付いてるってこと?
VBAで良ければ
Selection.Interior.ColorIndex = xlNoneがセルに色が付いてないとき
Selection.Interior.ColorIndex = 数値が何か色が付いてるとき
上手くカウントさせればできるかも。
>>332
VLOOKUPとHLOOKUPの組み合わせでできると思う。
338名無しさん@そうだ選挙にいこう:02/06/26 23:10
ワークシートのみの計算処理における限界を教えてください。
>>337

A列もB列も重複してるのに、どうやってやるの?
>>332

一番手っ取り早いのは、先頭に列を挿入して、=B1&C1
A列は隠す。

後はただのvlookup
341332:02/06/27 00:54
>>337
hlookupも考えたのですが指定の仕方が分からず断念しました。

>>340
それが一番現実的ですね。
ただ元データシートはいじれないので、できるならば1ステップ(関数の組み合わせで)
できる方法を考えてます。(もう1シート用意すれば良いのですがデータ量が多いため)
良いやり方はないもんでしょうか。

342名無しさん@そうだ2chに聞こう:02/06/27 00:58
2chのみなさま

現在EXCEL 2000上でマクロを組んでいるのですが、壁にぶつかってしまい、ご教授お
願いしたく投稿させてもらいます。

例えばセル1Aにhogeという文字があり、このhogeはハイパーリンクされて、
そのリンク先は同じフォルダに存在するバッチファイルを見に行っていると
します。(例えばage.bat名前にします)で、このハイパーリンク状態の文字
"hoge"をクリックすると、リンク先のバッチファイルage.batが実行されて、
そのバッチファイルに書かれている変数%NAME%は、クリックした文字"hoge"を
値として処理を行いたいのです。

例えばバッチファイルに echo %name% と、書いてある場合は変数%name%は
クリックした場所の1Aに書かれている文字"hoge"を使用して、バッチファイル
から生み出されるOutputは”hoge"という文字になります。

理解しにくい文章で申し訳ありませんが、できる限りわかり易く書いたつもり
です。もしこのような動作が可能なのであれば、是非教えてください。

よろしくお願いいたします。m(__)m
343名無しさん@そうだ選挙にいこう:02/06/27 02:03
shell "c:age.bat うんこ"
みたいにshellで引数付きでbatファイル起動すれば?
bat側でコマンドライン引数をうけとればいいでしょ
echo %1
344名無しさん@そうだ選挙にいこう:02/06/27 02:13
>>341
見出しをつけてDGETか配列数式
{=INDEX(C1:C10,SUM((A1:A10="a")*(B1:B10=3)*ROW(A1:A10)))}
でも遅い、無理とかいってないで処理用のシート作れ。
345:02/06/27 04:49
excel初心者です.

複数の点があり,各点の距離だけが分かっているとき,その点同士の位置をグラフで表示させることは可能ですか?
よろしくお願いします.
346名無しさん@そうだ:02/06/27 06:56
>>338
何の限界なのやら。

>>345
>複数の点があり,

点はどんな空間にあるんだ? 何次元なんだ?
各点はどんな書式で記述されているんだ?
点の情報が書かれているファイルの形式はどんなものなんだ?

>各点の距離だけが分かっているとき,

ほんとうに距離だけしか分からないのか?
各点と他のすべての点との間の距離が分かるのか?
その距離は2点間の直線距離なのか?

>その点同士の位置をグラフで表示させることは可能ですか?

どの視点から表示すべきなんだ?
全ての点を表示すべきなのか、それとも2点だけでよいのか?
( ´-`).。oO( 2点のみの関係という意味での相対位置を表示するなんて無意味だナ )
347名無しさん@そうだ選挙にいこう:02/06/27 10:11
>>329
どうですか?
348名無しさん:02/06/27 12:37
長文の上にわかりにくい説明になってしまいましたが
よろしくお願いします。

   A  B   C
  日付 項目  出金額
1 4/3 消耗品  1000
2 4/5 人件費  7000
3 4/13 雑費   1200
4 4/20 消耗費  2000
     ・
     ・
といった表を月毎にSheet12個分に作成しました。
さらに"消耗品"・"雑費"・"人件費"といった項目別のSheetを
作って、4〜3月の1年分の項目別一覧表を作成したいのですが
月別のsheetから振り分けるにはどうしたらよいのでしょうか?
どなたか良い方法をお教えください。
よろしくお願いします。
349名無しさん@そうだ選挙にいこう:02/06/27 13:32
>>348
私も初心者で自信はありませんが、

=SUMIF(Sheet1!B:B,"消耗品",Sheet1!C:C)
+SUMIF(Sheet2!B:B,"消耗品",Sheet2!C:C)…

ではだめでしょうか?
もっときれいな方法もありそうですが
350名無しさん@そうだ選挙にいこう:02/06/27 14:13
>>347
お前がどんないじりかたしたか知らないから分かるわけねえだろ
何日もアホみたいに悩んでるんだったら新しいシートにマクロ
以外のシート移せ sheets.move とかでいいだろ
それでも駄目ならさっさとExcel再インストールしろ
351田舎モノ:02/06/27 15:57
画面上ではセル内の文字がちゃんと表示されているのに
印刷すると写りません。列の幅とか変えてみたけど、ダメなんです。
何故なんでしょう・・・。
352教えて下さい!:02/06/27 16:13
皆様のお知恵を拝借したいと思い、書き込み致します。
大変重要なファイルに、誤って上書き保存してしまいました。
予備に保存してあったファイルにも同じように上書きしてしまいました(涙)。
上書きする以前のファイルはもう戻ってこないのでしょうか?絶対に不可能ですか?
どのような複雑な手段でも講じますので、ファイルの戻し方をお知りの方は、
ぜひ教えていただきたい!!と思います。
どうぞよろしくお願いいたします!!
353田舎モノ:02/06/27 16:19
すみませんもうひとつ・・・。
エクセルのファイルが勝手に読み取り専用になって、
開いた時に「このファイルは○○によって編集されています・・・」
読取専用で開くどうかのメッセージが出ます。設定した覚えはないんですが・・・。
>>353
そのファイルを既に開いていませんか。
Excelが複数起動してるとか、LANで違うPCから使用中とか?
>>351
セルの文字は途中までは印刷されるの?

それとも全然印刷されないの?
だとしたら、どんな文字列が入ってるの?
>>348
合計だけでなく、項目別の一覧を作りたいという事なら・・・
1〜12月分を一枚のシートに連結しておき、
オートフィルターを設定して、各項目ごとに絞り込み、
絞り込んだ状態で、新シートへコピペ。
357348ですが:02/06/27 17:07
>>349さん
その計算式だと消耗品の合計金額が出てしまいます。
簡単に例をいうと

〜4月のsheet〜
  A  B   C
  日付 項目  出金額
1 4/3 消耗品  1000
2 4/5 人件費  7000
3 4/13 雑費   1200
4 4/20 消耗費  2000

〜5月のsheet〜     
  A  B   C
  日付 項目  出金額
1 5/3 消耗品  3000
2 5/5 人件費  4000
3 5/13 雑費   3200
4 5/20 消耗費  1000
     
〜消耗品のsheet〜
A  B   C
  日付 項目  出金額
1 4/3 消耗品  1000
2 4/20 消耗費  2000
3 5/3 消耗品  3000
4 5/20 消耗費  1000

〜人件費のsheet〜
A  B   C
  日付 項目  出金額
1 4/5 人件費  7000
2 5/5 人件費  4000

〜雑費のsheet〜
A  B   C
  日付 項目  出金額
1 4/13 雑費   1200
2 5/13 雑費   3200

という風な感じにしたいのですが・・・。
すいませんがよろしくお願いします
358348ですが:02/06/27 17:17
>>356さん
すみません、↑の書き込んでいたので
読んでいませんでした。
できれば1つのsheetに移動しないで
一覧表を作成したいのですが...。
わがままばかりで申し訳ありせん。
359田舎者:02/06/27 17:37
>>354
結局そのファイルをコピーしたらそっちは上書きができました。
でも二重に開いた覚えはないんですよ・・・。
>>355
SSL2020用増設ドライブ※注1
TL891/TL881拡張ユニット

という文字がいひとつのセルに入ってます。(結合したセル)
でも印刷したら

SSL2020用増
TL891/TL881拡

までしか入りません。あう〜もう帰らないといけないです。
どうかよろしくお願いします!!
360356:02/06/27 17:58
>>358
一つのシートに移動しなくても、同じ事を12回繰り返せば出来ます。

シートに1年分まとめるのは作業用で、作業の手間を軽くするためのものです。
一枚に纏める時は、切り取りでなくコピぺでまとめてください。
そこで、オートフィルターを使った作業項目の数だけ行います。
作業が終了したら、削除します。
分かりにくくて&言葉が足らなくて済みません。
361355:02/06/27 18:05
セル幅が充分でも駄目なんですよねぇ・・・ 困ったなぁ。
Excelの場合、」画面上と印刷で少々の差は出易いですが、8文字は大きすぎますね。

う〜ん、結合セルというのが関係してるのか?
何か気付いたら書きこみます。お力になれなくてごめんなさい。
362348ですが:02/06/27 18:20
>>358=356さん
いろいろ考えていただき、ありがとうございます。
でもですね、できればそういう作業をせず
月別のsheetに「消耗品」を入力すると、そのまま
"消耗品"sheetに日付・金額が反映されるようにしたいのです。
ほんとに贅沢ばかり言って申し訳ありません。
363356:02/06/27 18:31
>>348
一ヶ所に入力したのと同時に、条件に合ったもう一つの場所にも自動記入させたい。
という事ですね。
帳簿を纏めるのではなく、帳簿システムを作りたいと・・・

出ていた例プラスα程度の規模なら、VBAの簡単な知識があれば可能です。
しかし、Excel自体が初心者の様に見うけられますので、
適したフリーソフトでも探したほうが早い様に思います。
ベクター等にいろいろあると思います。
364:02/06/27 18:37
>>346さん

345です。すいません、わかりにくくて。。。
えっと、

重みつきのグラフ

    5      4
  A――――B――――C
  |           |
  ―――――――――
      3

っていうのがあったとき、これをマッピングしたいです。
点は3つ以上あります。
お願いします・
365ohtaki:02/06/27 18:58
OEのアドレスのエクセルシート1、8000人分から、
配信希望者500人分のシート2を削除する方法をおしえてください。
フィルタオプシォンでできそうなのですが?
366346:02/06/27 21:53
>>364
ヒトのハナシをちゃんと聞け!
367名無しさん@そうだ選挙にいこう:02/06/28 00:50
EXCEL2000で普通に保存して終了した後、開こうとしたら
「○○○(ファイル名)にアクセスできません。ファイルは読み取り専用であるか、または
読み取り専用の場所にアクセスしようとしています。または、サーバー上に
保存されているドキュメントから応答がありません。」
とエラーがでて開きません。他のPCでも駄目です。
ファイルを右クリックすると、読み取り専用にはなっていませんが、
タブが全般しかありません。通常なら全般、カスタム、概要と3つあるはずですが。
このファイルはもう修復できないのでしょうか。
久々のEXCELのエラーでショック。こんなことがあるようなソフト売るな!!
買うな!
>>365

怪しい目的に思える。スパム発信者か?
>>367

スキャンディスクでもすれ
>>367
フロッピーディスクにそのファイル入ってるって落ちはない?
もしそうならデスクトップにでもデータをコピーしてそっちをひらいてみて。
372田舎者:02/06/28 09:23
>>355
実はセルの結合を解除したらちゃんと印刷プレビューに出てくるように
なりました。ただ、その表を「図のコピー」(Shift+編集で開いて出る方)
で、貼り付けたら、やっぱり例の場所が写りません。しかし、
今度は8文字でなく、2文字くらいの誤差になってました。
373エクセル98です:02/06/28 09:31
質問です

あ い う え
A 15 23 10 69

さ し す せ
B 93 25 14 75

な に ぬ ね
C 26 96 66 12

のような表(英字は品名 ひらがなは項目です)があるとき、
セルA1に品名
セルB1に項目を入力した時に
セルC1に数字が自動的に表示されるようにしたいのですがどのようにすれば・・・
項目が統一されていれば INDEXで出来るのですが
品名によって項目が違うのでちょっと苦戦しています。
アドバイスお願いします
374名無しさん@そうだ選挙にいこう:02/06/28 11:32
>>334
=IF(ISNA(Q16),"",INDIRECT("更新!C" & Q16))
という感じでやってみましたところ、
なぜか、
2002/5/17
となるはずなのに、
37168
という数字が書き込まれてしまいます。

しかし、
=IF(ISNA(Q12),"",INDIRECT("更新!C" & Q12))
ではなぜか
2001/12/17
とかかれ成功します。
何が原因でしょうか?
どうかよろしくお願いします
>>374
シリアル値で検索してみてください。
多分答えが見つかるかと。
376名無しさん@そうだ選挙にいこう:02/06/28 11:57
フリーのテンプレート(マクロ入り)を使用したらツールバーの設定を始め
いろいろ設定が変わってしまいました。インストール時に戻すリセットのような
事はできますかね?数式を入れてもセルにそのまま計算式が出てきて
数式バーの=を押さないと答えがわからないというなんだか間抜けな状況です。
>>374
S16とS12の両セルで表示形式の違いを探してみる。
378名無しさん@そうだ選挙にいこう:02/06/28 13:13
>>375,377
THX!
できました。セルの書式設定を日付に設定したら直りました
>>376
ツール>オプション>表示タブの「数式」のチェックを外す
380376:02/06/28 16:19
>>376
直った!ありがとうございますた。
あーよかった〜
381CHANCE FOR EVERYONE:02/06/28 16:48
インターネットは使い方次第で個の力を何倍もの力に変えることが可能です。
費用対効果で他の媒体にこれより優れたものは無いでしょう。
長い目で見ても素晴らしいネットワークビジネスの紹介!!
私たちの参加しているネットワークビジネスは 在庫をもつ必要がなく、
製造メーカーの製品を直接広めるものです。
私たちのグループは、製造会社の製品をHPとメールという媒体も活用して、
低価格、高品質なよき製品を広めようという集まりです。
流通コストを消費者に還元して製品を広めるというこのシステムは、
何人かの識者が本などで発言しているのを読んでみると、
人間的かつ将来有効なシステムを創っていける可能性の大きいものだと感じます。
実際、有名な大会社AT&T、GM、マスターカードなども採用しだしています。
興味のある人には、ぜひ参加して一緒にやってみましょう。
以下のホームページでの説明も御覧ください。
http://ailove22.fc2web.com/lpd/index.html
382九州だから?:02/06/28 16:50
最近思うのですが、エクセルをいかにマスターしたところで、
それをメインに仕事ができるわけではないな、と思うようになった。
というか、所詮事務処理レベルでしか仕事で使わないんですよ。
自分では関数もかなり使えるように
なったけど、実際仕事で使うのはせいぜいSUM。あとは入力だけ。
どこも「会社のシステム」が入ってて、それもシンプルな+-*/算くらいしか
使わないし・・・。

マクロができても仕事の募集も見ない・・・。
383スレ違い:02/06/28 17:26

ゴメン。
384りか@ハイパーリンク設定が分からないの:02/06/28 23:25
セルにURLリストを直接入力するとハイパーリンクになりますが、
文字列になっているものをハイパーリンクにしたいと思っています。
個別に一つ一つのセルを右クリックして設定できるところまでは
分かったのですが、URLリストが複数のセルに存在する場合に
そのセル内のリストを一括でハイパーリンクにする方法を教えて下さい!
例えば、
http://www.yahoo.co.jp
http://www.goo.ne.jp
http://www.infoseek.ne.jp
とあった場合にはすべてそのURL先へリンクさせたいのです。
どなたか設定方法教えて下さい。よろしくお願いします。
>>384
各セルでF2→Enter
386名無しさん@そうだ選挙にいこう:02/06/29 14:22
>>384
セルを選択→書式→スタイル→スタイル名をハイパーリンク でどう?

387名無しさん@そうだ選挙にいこう:02/06/29 19:26
ALT+ENTERを使うなどしてセル内で任意改行した文字列を、
別セルにて参照すると、改行箇所に“・”が入りますが、
それを非表示にする方法はあるんでしょうか?
388名無しさん@そうだ選挙にいこう:02/06/29 19:47
すいません。>>387です。
会社のPCだと“・”が入ったんですけど、自宅のPCでは消えてました。

OS&エクセルのバージョンの差でしょうか?
会社;windows98SE + office2000 SR-1の初期型
自宅;windows-xp + office2000 SR-1の最終型
389名無しさん@そうだ選挙にいこう:02/06/29 19:56
┌──┬───┬───┐
│番号│1    │2     │
├──┼───┼───┤
│A駅 │10:00  │10:03 │
├──┼───┼───┤
│B駅 │10:04  │10:07 │
├──┼───┼───┤
│C駅 │10:06 │10:10  │
└──┴───┴───┘
のように作った表から、ダイヤグラムを出す方法教えて。
390名無しさん@そうだ選挙にいこう:02/06/29 20:30
>>389
始発駅であるA駅からの距離(本当は標準到達時間か何か)のデータを入れた列を作り、
散布図。
>>367
ATOKの使用をやめれ。
Excelを立ち上げる。
 ↓
ATOKからMS-IMEにでも切り替える。
 ↓
ファイルを開く。
 ↓
別名で保存する。

それとATOKを通常使う日本語入力からはずす。
392367:02/06/30 18:22
>>391 
す、すごいです。言われるとおりATOKを使ってます。
EXCELのファイルはバックアップからなんとか復旧しました。
その後は問題はありませんが、ATOKを使う限り
また同じようなことがあり得るってこと?
ずっとATOKを使ってきたのでいまさらMS-IMEを使うのは・・・。
それにしてもMS製品とATOK相性悪すぎです。
IE使ってても??なことが多いし。
393391:02/06/30 22:21
>>392
私も同じ目に遭いExcelの再インストールまでしたから覚えてた。
ATOKの特定バージョンの問題なのかは不明。ジャストシステムのFAQにもないし。
394分かりません:02/07/01 11:13
関数で4捨5入を5捨6入とかに出来ないんでしょうか?
達人の皆様、教えてくださいm(__)m
>>394
+0.1してから四捨五入とか。
396分かりません:02/07/01 11:32
>>395
やっぱり、そうしないとダメなんですかねぇ。
>>396
関数はないので何かしら式を作らにゃならん
>>395 のやり方だとこんな感じ
=ROUND(A1-0.1*SIGN(A1),0)
398394:02/07/01 12:00
なるほど!!
ちょっとやって見ます。
399名無しさん@そうだ選挙にいこう:02/07/01 15:12
累乗根の計算方法がわかりません。
教えていただけませんでしょうか?

たとえば192466057の38乗根はどのように算出すればよいのでしょうか?
>>399
=192466057^38
ただし、このくらいになるとオーバーフローするかもね。
Excel 計算の仕様
有効桁数 : 15 桁
処理できる正の最大値 : 9.99999999999999E307
402名無しさん@そうだ選挙にいこう :02/07/01 16:18
>399 y=192466057 として累乗根をxとするとy=x^38ということだね?
両辺の常用対数を取るとlog(y)=38*log(x)
x=10^(log(y)/38)で計算できるよ。これでいい?
403名無しさん@そうだ選挙にいこう:02/07/01 16:21
エクセル初心者です。質問があります。エクセルは2000を使用しています。
セルに変更があったかどうかを調べる関数はありますか?
セルに入力があった場合、となりのセルとかにタイムスタンプを
押したいのです。
とりあえずifで入力セルがゼロ以外ならTODAY関数を使うように
したのですが、そうするとほかのセルが入力されるたびに
全部のタイムスタンプのセルが同じ時刻になってしまいます・・・。
何かいい手がありましたらお願いします。
404名無し~3.EXE:02/07/01 17:44
エクセルで質問です。
エクセルを使っていて、何を押したのか覚えていないんですが、急に
A列のところが数字の1,2という風に変わってしまいました。
どうしたら治りますか?
教えてください。
405名無しさん@そうだ選挙にいこう:02/07/01 18:01
>>404
「ツール」−「オプション」−「全般」−「R1C1参照形式…」のチェックを外す。
406名無しさん@そうだ選挙にいこう:02/07/01 18:34
=192466057^(1/38)
だろ
407名無しさん@そうだ選挙にいこう:02/07/01 18:57
すみません教えて下さい。

今、エクセルでデータの入力をしているのですが、
表に数字を左から右に向かって10個ほど入力をして
一行が終了なのですが、
一行終わるごとに、次の行の先頭にカーソルを持ってくるのが
とても面倒なのです。
一行終わったらエンターキーで次の行の先頭にカーソルが
来るような方法はないのでしょうか。

何か方法があると思いつつ、シートの保護等を組み合わせてやってみているのですが、
なかなかうまくいきません。
エクセル初心者なのでどなたか救いの手をお願いします。
408名無しさん@そうだ選挙にいこう:02/07/01 19:10
>>407
「TAB」キーで横移動を繰り返し、1行終わったら「ENTER」キー
最初にTABキーを打ったセルの一つ下のセルに移動します。

409408:02/07/01 19:20
追加 こんな手もあります。
入力範囲を選択してから入力をする。
「enter」は範囲内を下に移動、一番下まで行ったら次の列の一行目に移動
「TAB]は範囲内を右に移動、一番右まで行ったら次の行の一番左に移動
「SHIFT]+「ENTER」で上に移動、「SHIFT」+「TAB」で左に移動 になる
これで選択範囲内をぐるぐる回ります。

ただし、入力を間違えた時に入れ直してると、選択範囲はチャラになって
しまい、範囲選択し直しになるのが難点。
Excel2000です。

ツール/マクロ で表示される マクロ名ダイアログで一覧に一部のマクロ(Sub)が表示されません。

どないしょ。

VBAはなんやかんやで(空のシートと併せて)1Mバイト超えてます。やっぱりどっか壊れたのかしらん。
>>410
Private は表示されんが
412名無しさん@そうだ選挙にいこう:02/07/02 12:57
Excel使ってみようと思って、Excelって言えばやっぱグラフかと
グラフウィザードで作ってみたのですが、どうも下の項目軸名を
変える方法が分かりません。
ウィザードで作ったせいか、今は1、2、3…と数字が振られていますが、
これを6月1日、2日、3日…としたいのですが、どこを触れば良いのでしょうか。
お願いします。
413名無しさん@そうだ選挙にいこう:02/07/02 14:38
エクセル2000を使っていますが、1つのファイルだけ、
シート見出しの領域(シートタブと水平スクロールバーのある領域です)
の高さが普通より少し短いのです。

そのファイルだけは、シートタブに書かれたシート名の
文字(全角文字)の上がほんの少し切れます。
水平スクロールバーも、高さがほんの少し短いです。

新規エクセルファイルでも、他のファイルでもそれは
起こりません。
直し方はあるでしょうか?
414名無しさん@そうだ選挙にいこう:02/07/02 15:29
表の数式と値のうち、数式は消さないで値だけ消すには
どうしたらいいんですか?
415ゴム:02/07/02 16:41
過去ログを見る余裕がないので外出だったらすいません。
行と列がある一覧表で縦と横の項目を見て交差する
値を返す方法があったら教えてください。
今はvlookupとhslookupを併用してやってますが
もっと簡単な方法があったら教えてください。
416名無しさん@そうだ選挙にいこう:02/07/02 16:51
>>414
数式の元になっているセルを消す。
417名無しさん@そうだ選挙にいこう:02/07/02 16:52
>>412
グラフウイザードの2/4の「名前」のとこをかえてみれ
>>414
編集→ジャンプ→セル選択→定数→OK→消去
>>415
index関数
フォームにコマンドボタンを配置して、それを押すと
docとかtxtが開くようにしたいのですが、openステー
トメントを使うのでしょうか?

よくわからなかったので教えてください。
>>418
どう開きたいのか知らんが Word ファイルであれば Open では開けん (困難)
テキストファイルなら開けるし Word は Excel VBA で制御できるが
いろいろなファイルを開くなら ShellExecute を使うのがいいかと
下は Excel 2000 での例

Private Const SW_SHOWNORMAL = 1

Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpVerb As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Private Sub CommandButton1_Click()

ShellExecute FindWindow("ThunderDFrame", Caption), "open", "C:\My Documents\test.doc", vbNullString, Application.Path, SW_SHOWNORMAL

End Sub
>>414
なんか最近、某メーリングリストでそっくりの質問見たな。
変な消し方、流行ってんのか?
421418:02/07/02 23:15
>>419
開くことができました。ありがとうございました。

ついでに教えてもらいたいのですが、
>Private Const SW_SHOWNORMAL = 1
から
>Private Sub CommandButton1_Click()
までの間のどういう宣言なのですか?
勉強不足ですいません。
>>421
Win32API。検索してみろ
423414:02/07/03 08:51
416.417
どうも!
424名無しさん@そうだ選挙にいこう:02/07/03 09:52
>>403
で質問したものです。やはりセルにタイムスタンプを押すなどの作業は
マクロを使わないと無理なのでしょうか?
425395:02/07/03 10:07
>>396
>=ROUND(A1-0.1*SIGN(A1),0)
なんで =ROUND(A1+0.1,0) じゃいけないんだ?
と考えてたけど、わかった。 A1<0 の時も五捨六入になるようにしてるんだ。

一晩寝て起きるまでわからなかった……まだまだだ、オレ
>>424
うん。マクロを使わないと無理だよ。
あとは「ツール」「ブックの共有」機能で履歴を記録することかな
詳しい方法はヘルプとかWEBしらべてね
でもこの方法は気をつけないとファイルサイズがすぐ大きくなるんで
あんまりおすすめできないんだよもん。
427名無しさん@そうだ選挙にいこう:02/07/03 17:52
棒グラフで項目と凡例を同じにできますか?
428名無しさん@そうだ選挙にいこう:02/07/03 18:20
>>427
意味が判りませんが…
もっと具体的にどうぞ。
429名無しさん@そうだ選挙にいこう:02/07/03 18:35
エクセル2000とMS-IME2000使用しています。
エクセルを立ち上げたときに自動で入力モードをローマ字ひらがなモード
にする方法を教えてください。
430427:02/07/03 18:37
>>428
すいません。
項目がビールであれば、凡例にもビールという表示をさせたいのです。
系列と項目の名前をいっしょにできるのでしょうか?
431428:02/07/03 19:03
>>427さん
グラフの項目と系列の関係(行と列のいずれかがそれぞれ対応)を
ゴッチャにしている様な気がするのですが。
そんな事はわかっていて、あえてしたいという事なら…

話しから系列数と項目数は同数と思われますので、例えば
  A    B    C    D
1 ビール   5
2 ワイン       3
3 冷酒             7
見たいな感じで、データ表の対角線上にのみデータを入力。
グラフ種類は「積み上げ縦棒」を選択する。

こんな風では如何でしょうか? はずしてたらゴメン。
432428:02/07/03 19:09
>>431 追加訂正

  A    B    C    D
1      ビール  ワイン  冷酒
2 ビール   5
3 ワイン       3
4 冷酒             7

にすると、凡例の名前付けが簡便でした。
433427:02/07/03 19:11
>>431
回答ありがとうございます。
わかってはいますが、あえてそうしたいのです。
教えていただいた方法だと項目がずれてしまうのです。
434428:02/07/03 19:28
>>433
私もやってみましたが、ずれませんけど。 >432も試してみましたか?
もし、凡例の順序を変更したいという問題なら、
棒の一つを選択して、右クリック。
「データ系列の書式設定」−「系列の順序」をいじってみて下さい。
435427:02/07/03 19:36
>>434
回答ありがとうございます。432もためしてみましたが、ビールと冷酒の項目名が棒グラフの真下にならないのです。
436428:02/07/03 19:37
>グラフ種類は「積み上げ縦棒」を選択する。
選んでますか?
437427:02/07/03 19:45
>>436
おぉ!成功しました。
ありがとうございます。
438427:02/07/03 19:49
>>436
普通のデータ表から432のようなデータ表にするにはどのような方法がありますか?
簡単な方法があれば教えてください
439428:02/07/03 20:49
おめでとうございました。
次からは>>1 にもあるように
『・質問する人は可能な限り具体的に書くこと。』が早道です。
ネットの向うのPC画面は見えません。
あと、人の話はよく聞いてください。

>>438の簡単な方法ですが、沢山あるなら、マクロ(VBA)を組みます。
そこまでするほど多くなければ、
  A    B    C    D     E
1          ビール  ワイン  冷酒
2 ビール 5
3 ワイン 3
4 冷酒  7
の様にもとの表の(or右)に項目を足しておき、
C2=IF(MATCH($A2,$C$1:$F$1,0)=MATCH(C$1,$A$2:$A$5,0),$B2,"")
「C2:E4」範囲にオートフィル。
(検索関数苦手なのでもっとシンプルな式もあると。誰か代案ヨロシク。)

少しなら、地道にやるのが結局早い!?
では頑張ってください。

440名無しさん@そうだ選挙にいこう:02/07/03 22:21
439は、うまい方法だと思うけど、
C2に入れる式は
=IF(C$1=$A2,$B2,"")
でいいんじゃない。
441へぼ初心者:02/07/03 22:55
OfficeXPのExcelでセルにハイパーリンクを張ったのですが、
Enterキーでリンク先に飛んでくれません。バルーンヘルプでは
「ダブルクリックしてください」なんて出てるし。
なんか別のショートカットキーがあるんでしょうか?
442439:02/07/03 23:02
>>440
あっ、ホントだ。コピーしても対応できてますね。
私、何考えてだんだろ?これなら、シンプルですぐに入れれますね。
どうもでした。
443427:02/07/04 00:31
>>439 440
ありがとうございます
444名無しさん@そうだ選挙にいこう:02/07/04 01:29
たとえば、A1に TEST[3000] と記入されているときに
下記のワイルドカードを使うようなイメージで
MsgBoxに TEST と表示させることをしたいと思います。

Sub tad()
MsgBox Replace(Cells(1, 1), "[*]", "")
End Sub


MsgBox Replace(Cells(1, 1), "[" & * & "]", "")
MsgBox Replace(Cells(1, 1), "[" & \* & "]", "")

どれも駄目でした・・・

マクロでワイルドカードを使った置換はどのように行うのでしょうか?
どなたか教えてください。
445名無しさん@そうだ選挙にいこう:02/07/04 02:26
Sub abc()
  a = Range("A1").Replace("[*]", "")
  MsgBox Range("A1")
End Sub
446名無しさん@そうだ選挙にいこう:02/07/04 08:42
>>445


ありがとうございます。
目的の動作を実現することができました。


しかしながら、A1の値を変更せずに
マクロの中でのみ、置換された値を使いたいので
>>445を下のように
変更したのですが、すごく冗長な気がします。

これって、わかりやすくスマートに書くことってできますか?
どなたか、お願いします。

Sub abc()

a1_original = Range("A1").Value

tmp = Range("A1").Replace("[*]", "")
a1_tmp = Range("A1")

Range("A1") = a1_original

MsgBox a1_tmp

End Sub
447名無しさん@そうだ選挙にいこう:02/07/04 11:43
100%積上げ横棒グラフを作成したときに区分線を部分的に入たいのですが
可能でしょうか?「区分線の書式設定」では全ての区分線の設定は可能ですが、
1本ずつの設定ができないのです。
>411
Publicが表示されない。なんでだろー。
>>448
新しい Book にコピペないしインポートして正常かどうか調べてみれ
450名無しさん@そうだ選挙にいこう:02/07/04 17:57
>>447
不可能。図形描画から線を加えれ。
>>446 根本的には差がないがdiet
Sub abc()
  a1 = Range("A1")
  tmp = Range("A1").Replace("[*]", "")
  MsgBox Range("A1")
  Range("A1") = a1
End Sub

452451:02/07/04 18:16
朝餉になってしもうた。失敗(汗w
453名無しさん@そうだ選挙にいこう:02/07/04 19:50
別のブックを参照しているセルを、別シートにコピーすると
なぜか何も入っていないセルに「0」が勝手に入りやがるので嫌なのです。
これを空白のままに出来ないのでしょうか。

あと、この「0」を消そうとVBAで
Range("A1").Value = ""
とか
Range("A1").Formura = "=B1"
とかやると、「配列の一部を変更できません」ってなるのですがなぜでしょうか。
454 :02/07/05 00:39
セルの幅は一定でしかいられないのですか?

例えばA行の幅について、
A1からa9を幅10、A10からA20までは20とかできませんか?
>>454
セルを結合したら?
456名無しさん@そうだ選挙にいこう:02/07/05 11:26
Excel 2000 の質問
ファイルをダブルクリックして開くとき
既存の Excel じゃなく新たに Excel を起動して開くには?
こんな感じでどうだろ?

Private Sub Workbook_Open()
  Dim MyPath As String
  
  MyPath = ActiveWorkbook.Path
  ActiveWorkbook.SaveAs Filename:=MyPath & "\(" & Format(Now, "yyyymmddhhnn") & ")" & Right(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 14)
End Sub
あ、↑は開くファイル名の頭に(200207051246)book1.xlsみたいに14文字のなにかしらが必要です。
459初めて質問者:02/07/05 13:19
初めて質問させていただきます。
索引作成で困っておりまして、人の名前を五十音順に並べ替えるのですが、
下記のような並びにしたいのです。

直井 ナオイ     直井 ナオイ
中井 ナカイ     中井 ナカイ
永井 ナガイ     中尾 ナカオ
中尾 ナカオ     中田 ナカタ
長尾 ナガオ     永井 ナガイ
中田 ナカタ     長尾 ナガオ
永田 ナガタ     永田 ナガタ
南木 ナギ      南木 ナギ

左側はエクセルの五十音で並べ替えられるのですが、
右側のように濁音が後ろに来るようにするにはどうしたら
よいのでしょうか。
よろしくご指導おねがいたします
初めてココに質問します。どなたかご教授していただければ…と思うのですが(^^;
Excel2002で以下のマクロを記録しました。

00 Sub 置換え()
01 Sheets("Template").Select
02 Columns("C:C").EntireColumn.AutoFit 'セルの自動幅調節
03 Columns("C:C").Select
04 Selection.Replace What:=":", Replacement:="_", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False '文字「:」の置換え
05 Selection.Replace What:="|", Replacement:="_", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False '文字「|」の置換え
06 Sheets("Sheet1").Select
99 End Sub


03でc列を選択して、04,05でc列の中に「|」「:」が在れば「_」に置換えする、というものです。
これをVBAのモジュールに組み込んで使おうとしたのですが、
03が黄色く選択され、「RangeクラスのSelectメソッドが失敗しました」と表示されます。
ヘルプも参照してみたのですが、よくわからない書き方の上に、毎回違う項目が開くので
何を信じれば良いのかサッパリです(TwT) (HelpFile壊れてる?)
それとも記録したマクロをそのまま組み込んで使うのはアマイ考えなのでしょうか…
>>459
C列に「=LEFT(B1,2)」をオートフィルさせて
データ>並べ替えで最優先されるキーをC列、2番目に優先されるキーをB列に設定して並べ替えすれば?
462460:02/07/05 14:53
途中で書き込みボタン押してしまいました(汗)ああ、スペースずれてる…

エラー文を読むと、c列を選択するのが上手く動作していないのかな、と
読めるのですが、如何なものでしょうか。
VBAを使うのは初めてですので(というより何かを組む事自体が10年振り)
よろしくご指導の程、お願い致します
463457:02/07/05 15:08
あ、456はEXCEL97みたいな別ウィンドウで開く動作を期待してたわけか・・・
>>456 無理
464456:02/07/05 16:54
>>463
そういうことっす(Excel つーより Win 関する質問でした)
自己解決したが実行するアプリで DDE を使わず引数を "%1" とすればできることがワカタ
回答すまんかった m(_ _)m
>>460
別におかしかねーぞ
とりあえず Select しねーでやってみれ

With ThisWorkbook.Sheets("Template").Columns(3)
.Replace ":", "_", xlPart, xlByRows, False, False, False
.Replace "|", "_", xlPart, xlByRows, False, False, False
End With
466名無しさん@そうだ選挙にいこう:02/07/05 22:34
マクロのコードを変更するマクロって作れますか?
Excelのヘルプにそんな記述があったような気がするのですが・・・。
参考になるサイトか本ってなにかない?
>459

B2に全角でフリガナがあるとして、C2に

=IF(ISERROR(SEARCH("゙",ASC(B2),1)),0,1)

C列B列の順に優先を付けてソート
>>466
CodeModule オブジェクトを調べい
469名無しさん@そうだ選挙にいこう:02/07/06 01:52
スクロールバーをドラッグしたとき、
実際に表示領域が更新されるのはマウスボタンを離したときになりますが、
これをドラッグに伴ってリアルタイムで表示領域を更新させるにはどうすればよいのでしょうか?

数年前の週刊アスキーにレジストリをいじる方法が載っていた記憶があるのですが…
470453:02/07/06 20:12
>>453なのですが…。どなたか…。
471名無しさん@そうだ選挙にいこう:02/07/06 21:09
>>470
見た目がいやなだけだったら、表示形式を変えるとか。
データが入ってないことにするのはできるのかな。
>>470
その状況が再現できないよ。
「0」も出てこないし、「配列〜なんたら」もならない。
474名無しさん@そうだ選挙にいこう :02/07/06 21:44
 えクセルを使い始めて2ヶ月ほどになるものです、どなたかに助けて頂きたく
 カキコしました。
  仕事である地区について、ある事項(1)が起こったときにその年度を入力するという
作業をしています。ただしその事項は過去に起こったことがあるばあい、過去の年度が優先
されないといけません。この地区の件数が何千件もあるため過去の年度を調べるのにいちいち
書類を見返しています。
 そこでいっそのこと過去年度のデータを入力しておいて、過去に1がすでにおこっている
場合地区と1を入力すると過去年度が自動的に抽出されるような機能はないでしょうか。
ながながとすいませんが、次のような感じでやってます。

  たとえば下のようなシートにA(地区)B(1)C(年度)
 ある地区について、1という事項があったときにその年度を入力
 ルックアップ機能などは使えないのでしょうか。
  
   A         B       C
1 トウキョウ1−2    1       14  

2 オオサカ3−1     1       13

3 フクオカ7−3     1       11

4

.

475453:02/07/06 22:29
>>471>>473
驚いた事に今、別のBook開いてやってみたら再現しませんでした。
VBA内でなったので、それも試したけどなりませんでした。
おかしいな…。
とりあえず>>471サンのおっしゃる通り、表示させない方法試してみます。
ありがとう。
476名無しさん@そうだ選挙にいこう:02/07/06 22:34
ある地区においてある事象が発生した最も古い年度を知りたい。
ただし、これまでに一度も発生していない場合は空白とする。
ということ?

地区と事象の数が限られてるなら、ルックアップとか何とかいわずに
地区ごと事象ごとに表を作り上げてしまえば済むのではないか。で、
あとは空白の地区・事象について、発生するたびに入力してゆく。

アクセスのほうが向いてるのではないか、と思わなくもない。
477名無しさん@そうだ選挙にいこう:02/07/06 23:05
>>476
件数にもよるが、やりたい事はシンプルなので
Excelで充分だと思われ。
初心者らしいし、ここでACCESSに手を出しても混乱するだけでは?

A列に地区名、行1に事象名(1だけでなくずらっーと)
クロスしたところに、年度を入れる。

地区と事象の数が多いなら、検索関数を勉強するとよし。
478474:02/07/06 23:24
レスありがとうございます。
過去に事象が起こっていない場合は、年度に14を入れます。

<476 たしかにそうなのですが、Bの列にはいるのは1だけではなく
     1から40ぐらいまでの事象でありその中で特に1につい
     ては年度の入力が必要とされます、せつめいぶそくですいません。
479477:02/07/06 23:33
<476 たしかにそうなのですが、Bの列にはいるのは1だけではなく
     1から40ぐらいまでの事象でありその中で特に1につい
     ては年度の入力が必要とされます、せつめいぶそくですいません。
これってもしかして、<477宛かと思うので再レス(違ってたらゴメン

   A         B       C
1          事象1     事象2  ・・・・・・・ 事象40
2 トウキョウ1−2    14     13            13  
3 オオサカ3−1    13     14            12
4 フクオカ7−3    11     14            14
5

年度の入力が必要ない事象は空欄にしておけば良い。
480名無しさん@そうだ選挙にいこう:02/07/07 00:49
遅くに申し訳ございません。

1つのブックに60くらいのシートがあります。
それぞれのシートには斡旋品の支出状況が出来ていて、
今までいちいちそのシートを開いて、在庫を確認していました。
出来れば、在庫を別シートにまとめて表示させる方法はないでしょうか?

また、個々のシートの斡旋品支出状況も、一つ一つ手で式を入れてました。
例えば、斡旋品Aに対し、
  |   A  |  B  |  C  |  D
----------------------------------------
1 | 日にち | 入庫 | 出庫 | 在庫
----------------------------------------
2 | 7/1   |  500 |     |  500
----------------------------------------
3 | 7/2   |     |  100 |  400
----------------------------------------
4 | 7/3   |     |  150 |  250
----------------------------------------
と、こんなかんじで作成しています。
(同じように斡旋品B、斡旋品Cというのもあり、別シートで管理しています。)
7月2日だったらD2-C3、7月3日だったらD3-C4となっています。
手で式を入れ直すのではなく、B列・C列に値を入れたら
自動的にD列に在庫を入れる方法を教えて下さい。
>>480
このサンプルで言えば、
D2=D1+B2-C2と入れた後、オートフィルで下段にドラッグしていけば
いいのでは?
訂正
D3=D2+B3-C3
483名無しさん@そうだ選挙にいこう:02/07/07 08:41
>>480

>>482の方法で各斡旋品の在庫を求め、
各在庫をコピーして、
新たに作成した在庫一覧シートにペーストリンク。
484471:02/07/07 08:46
>>475

ある程度のセル範囲を配列として別シートから参照している場合
(範囲を選択してペーストリンクした場合)に、
>>453のようなエラーメッセージが出たと思う。
485名無しさん@そうだ選挙にいこう:02/07/07 15:16
>>481>>482>>483
どうもありがとうございました。
早速やって見ます。
486名無しさん@そうだ選挙にいこう:02/07/08 00:23
エクセル2000です。OSはウインドウズ98で、
サーバー(ドメイン)に接続しています。
ある日突然、特定のユーザがドメインに接続するときだけ、
エクセルが強制終了するようになりました。
プログラム自体が開きません。
ローカルでログインしたり、他のユーザがドメインにログインすると
普通に使用できます。何が原因でそうなってしまったか、
さっぱりわかりません。どうしたらいいでしょうか?
487名無しさん@そうだ選挙にいこう:02/07/08 00:51
コピーソフトを不正使用してません?
488watume:02/07/08 10:32
Excel2000使ってます。

bmpデータを管理するのに、表を作ってます。
でも、ファイル名だけではなんなので図の挿入でbmpの絵を貼ってるんですが、
元のbmpデータが変更されたときに、いちいち再度図の挿入をするのが面倒です。
bmpを入れておくフォルダはいつも一緒だし、
元bmpを上書きしてるので、bmpのファイル名は、変わりません。
うまく元データにリンクできれば、bmpを上書きするだけで
表を触らずしていつも最新になってる、と言うようなことが出来ると思うのですが、
やり方がわかりません。

どの様にすればよいのでしょう?
489460:02/07/08 10:49
>>465
雄男牡おおおおおおおおお(T-T)
ありがとうございます。無事動きました。
ちとExcelの本買って勉強してきますね。
490名無しさん@そうだ選挙にいこう:02/07/08 11:06
たいていのことはかみにいのればなをります
>449
デベロッパーの「ソースコード管理アドイン」の問題みたい。
ソースコード管理下に入るとそれをXLSファイルのどこかに覚えこんでいるようだ。
エクスポート/インポートしてやんないとソースコード管理から外せないんですけど、
他にほうほう無いかしら?
492名無しさん@そうだ選挙にいこう:02/07/08 13:15
教えてください。
いま、エクセルで作業をしているのですが、データ量が多いのです。
ファイルサイズが30メガとか50メガになってしまいます。
それを簡単な関数とかで推計していると、固まってしまいます。

原因は
・ファイルサイズが大きすぎ
・パソコンが非力すぎ(ノートパソコンでセレロン500、メモリ192メガ)
のどちらが主因でしょうか?ちなみにエクセルで扱うファイルの上限は存在するのか、
またパソコンの性能がアップすれば、固まらない確率が大きくなるのか教えてください。

よろしくお願いします。
493 ◆EMrmvKLI :02/07/08 15:18
・Windows98se
・Excel97SR-1 (office97)

VBAをしています。
あるフォルダ内のファイル名を全て取得したいんですが何か方法はないでしょうか?
なるべくならAPIを使わない方法があれば幸いなのですが。

何卒宜しく御願い致します。

494名無しさん@そうだ選挙にいこう:02/07/08 15:26
>>492
固まってるんじゃなくて考えてるんだろう。
一日ぐらい考えてるかもな、だからずっと、ほっとけ。
なぜ、VB,C,C++でやらないのか?
495名無しさん:02/07/08 15:44
エクセル97です。
関数を「0222」と打つと「222」としか表示されないのですが
「0222」と表示させる方法を教えて頂けないでしょうか?
496watume:02/07/08 16:37
>>493
aFile = Application.GetOpenFilename
でダイアログを出して、ファイルのあるディレクトリを取得できる。

dir(aFile(i))     ------(i)は1から数える変数(for i = 1 to xxxとかで使う)
でそのディレクトリのファイルをひとつづつ取ってこれる。

>>493

カレントフォルダのファイル名取得プロシージャですが、
どうでしょうか?(サブフォルダは検索してません)

Sub aaa()

Dim bbb As String
bbb = Dir("*.*")

Do While bbb <> ""

i = i + 1
Cells(i, 1).Value = bbb
bbb = Dir()

Loop

End Sub
>>495
セルの書式設定で文字列
499493:02/07/08 16:54
>>496 >>497
ありがとーございます。

>>497さんの方式でやってみます。

ようやく解決できそうです。
有難う御座いました。
http://www.cartoonnetwork.co.jp/g-card/images/thumbnail/00atom_s.gif
唐突に500げっちゅ!
501名無しさん@そうだ選挙にいこう :02/07/08 22:35
初めて質問します。
Win98SEでExcel97を使ってます。


挿入→オブジェクト→ファイルから でデジカメ写真(元は50KB程度のjpg)を
貼り付けたらファイルサイズが2MBくらいになりました。
この写真(オブジェクト?)を元のjpgに戻すことはできますか?

挿入→図→ファイルから で貼り付けたほうがファイルサイズを軽くできる
らしいので、作り変えたいのですが元々の写真がもう残っていません。

なので、一旦jpgに戻しもう一度貼り直そうと考えています。
それとも他にその写真(オブジェクト?)をそのままに軽くできる方法はありますか?

よろしくお願いします。
502名無しさん@そうだ選挙にいこう:02/07/08 22:59
写真を「コピー」して、ペイントなり画像ソフトなりで「貼り付け」すれば、
また保存しなおせます。
503名無しさん@そうだ選挙にいこう:02/07/08 23:12
EXCELでは ALT-Enter を押せば、セル内で改行できますよね。
このようなセルを含んだデータを、プログラムで出力させたいのです。

プログラムで扱うため、XLS ファイルではなく、CSV ファイルに
して、それをEXCELで読み込もうと思います。

改行の記述は、たとえば \n にしておき、
EXCELで \n を改行コードに置換し、
その結果、セル内での改行が表現できればいいんだけど、
どうやっていいのかわかりません。

何かいい方法はありますでしょうか?
>>503
改行はChar(10)だから、置換すれば良し。
>>503
Excelでセル内改行したシートをCSVで出力してみました?
506503:02/07/09 09:17
>>504
「編集」→「置換」で出るダイアログから、それをできるですか?
abc\ndef の \n を Char(10) に置換してみたら abcChar(10)def になってしまった(汗)

>>505
もちろんやってみましたよ。
「使えねえなあ」と思いましたです。
505さん、その結果を見て何かいい方法を思いついたですか???
507503:02/07/09 09:22
>>505
ごめん。これで良かったんですね。
改行コードが CR+LF じゃなくて、LF のみで出力しないといけなかったですね。
505さんサンクス。
504さんもヒントを呉れてサンクスです。
508名無しさん@そうだ選挙にいこう:02/07/09 09:26
21 名前:  投稿日:2002/06/03(月) 22:01
始めて裁判見てきたけど、ひろゆきって2chでの中傷について、「おいらは第三者だもんねー」ってな主張してたけど、裁判官に一喝されてた。
どうもひろゆきが企業の中傷を禁止してないことと、削除依頼を自分の意思で突っぱねたことで、当事者と判断されてる感じ。
でも裁判官も他の掲示板と2chは同じには扱っていないみたいだったから、他の掲示板には影響ないと思うけど。
それにしても、ひろゆきの顔はイベント板のタイトルに使ってる写真と全然違うのに驚いた。
あの写真は「勝負写真」なんだろうけど、あれじゃ詐欺だよ。
実物は深海魚みたいな顔だった。
509名無しさん@そうだ選挙にいこう:02/07/09 16:28
if関数ででた値を合計するにはどういう式が必要になりますか?
510名無しさん@そうだ選挙にいこう:02/07/09 17:27
昔々、BASICを使っていたexcel素人です。
最近VBAを覚えようと思い、勉強しているのですが、わからないことがあるので教えてください。
@DO〜LOOPやFOR〜next等のコマンドで、ループの途中である条件を満たした場合に、
 そのループを終了させ、次に行くためにはどうしたらいいでしょうか?
ADOやIFのあとに続く条件文で、andやorはつかえますか?
Bある条件を満たした場合に、途中でSUB(サブルーチン?)を終了させたいときは
どうしたらいいですか?(ENDSUBが二つ以上は置けないようなので)
Cむかしのbasicのように、行番号がないので、飛ばしたり、戻したりに苦労してます。
いい方法はありますか?
くだらない質問だとは思うのですが、よろしくお願いします。
511名無しさん@そうだ選挙にいこう:02/07/09 19:08
if関数ででた値を合計するにはどういう式が必要になりますか?
512名無しさん@そうだ選挙にいこう:02/07/09 19:16
例えば [ ENT.2002.07.09.xls ] の様にファイル名に日付を含んでいる
エクセルファイルで、ファイル名から日付をとってきて自動的に
日付を入力するようなマクロを作りたいのですが、可能でしょうか?

今は完全に手入力でやっているのですが、面倒な上に間違いやすくて・・・
識者の方、よろしくお願いします
513510:02/07/09 19:22
すいません。過去ログ見てたらありました。
@、Bはexitを使うんですね。
いるか君の言ってることはよくわからないので・・・。
A、Cもお願いします。
>>513
2.Yes
4.ラベルをつけるかな?
Basicをやったこと無いので行番号がどんな風に使われるかはっきりとはわかりませんが。
515510:02/07/09 20:08
>514
レスありがとうございます。
「VBA ラベル」で検索したらラベルの意味もわかりました。
質問というか疑問なんだけど
みんなは五捨五入とか使わないの?
品質管理やってるひととか
517名無しさん@そうだ選挙にいこう:02/07/09 21:21
if関数ででた値を合計するにはどういう式が必要になりますか?
>>516
五捨五入というのを初めて聞きました。
調べてみたんですが、へぇ、そんな計算が必要になるんだ、といった感じです。
検索では測量関連で利用されているようなページが見つかりました。

>>517
SUM関数
519慎太郎:02/07/09 21:50
元利金等元金均等返済を求めるExcelの
マクロを作りたいのですがおながいしま〜す。
520名無しさん@そうだ選挙にいこう:02/07/09 21:55
自動保存の設定を解除したいのですが、チェックを外しても
一旦ファイルを閉じると設定が復活してしまいます。
完全に解除する方法を教えて下さい。
521名無しさん@そうだ選挙にいこう:02/07/09 22:43
>>519
ヘルプの財務関数
522名無しさん@そうだ選挙にいこう:02/07/10 00:30
印刷プレビューをすると、
エクセルのスタックエラー
モジュール:KERNEL32.DLL アドレス:0167:bff724c1
ってメッセージが出てきてexcelが落ちるんだけど
どうしたらいいのでしょう?

人のトラブルなんで
細かい情報が欠落してます、すいません
MSのニュースグループのログも見てみたんですが
同様の質問が上がってましたが
レスがなかった様です。
>>522
基本的にウィンドウズのトラブル関係であることが多い(みたい)
たくさんヒットしたけど、たくさんありすぎて探したくない(w
あとはよろしく

http://www.google.co.jp/search?hl=ja&inlang=ja&ie=Shift_JIS&q=kernel32.dll+Excel+%83X%83%5E%83b%83N%83G%83%89%81%5B&btnG=Google+%8C%9F%8D%F5&lr=lang_ja
プログラム板から案内されてきました。

VBAでのプログラミングに関して質問です。
ユーザーフォームにリストボックスを置き、
そこにN行3列のリスト(ファイルから読み込み)を表示させ
ユーザーに選択させる処理があるのですが
それぞれの列の幅を自由に設定する方法はないのでしょうか。

あるいは3列のデータを結合した文字列を作り
それを表示させることも考えたのですが
「リストボックス上の表示と、選択時に入るListbox.Valueの値を
 違うものにする」
ことができるかどうかが分かりません。
ちなみに、リストボックスをシート上の列に関連付ける方法は
処理時間がかかるので駄目でした。

>>524
ColumnWidthsを使うべし。
詳しくはヘルプを
526522:02/07/10 01:53
>>523
レスどうもです。
書いてませんでしたが
既に同じキーワードでググってました。
大体BBSやQ&Aサイト等に引っ掛かるんですが
excelとカーネルの話は関連性が無いというか
別項の話なんですよ。
色んな角度からググってたんですが
同様の質問&事項は見つかりませんでした。
唯一見つかったのが
MSのニュースグループのログでした。
http://www.lix.ne.jp/~winfaq/bbs9x/139.html
「Re^2: Word起動時にフリーズ」辺りが参考になりません?

ここには「NECのサポートは再セットアップしかない」とあるみたいですけど。
聞いていなかったけど、Excelの再インストールくらいはしたの?

カーネルの話なら、それ以外の情報もうpした方がよくない?
OSとか入れてるアプリとか、ね?
OFF2000: Troubleshooting Office Kernel32.dll Errors Under Windows 98 (Q218853)
http://support.microsoft.com/default.aspx?scid=kb;EN-US;q218853
>>510
余談。未だに行番号も使えたりする(藁
Function hoge()
10 Dim I As Long
20 I = 0
30 Debug.Print I
40 I = I + 10
50 If I <= 2000 Then GoTo 30
End Function

MicrosoftってBasicのことを溺愛してるよな⊂ ´⌒つ゜ー゜)つ
531ちゃん:02/07/10 10:09
エクセル97で作成した一覧表を印刷すると1P、
これを、フロッピーに入れエクセル2000のPCで印刷すると、
2Pになって出てくる。プリンタ、OSはいっしょ。
97では印刷範囲に入っているものが、2000では、ずれてしまう。
これはどうしてでしょうか?また、ワードでもこういう現象はあるので
しょうか?毎回こうだと困るので、どなたかおしえてください!!!
532名無しさん@そうだ選挙にいこう:02/07/10 16:15
excel2000を使っています
vbaでキー操作のやり方がわかりません
一つ下にとかshift押しながら一つ下にとかの方法です
helpは見たのですがみつかりませんでした
教えてください
>>532
SendKeys "{down}"
SendKeys "+{down}"
など、SendKeysステートメントで検索してちょ。
534名無しさん@そうだ選挙にいこう:02/07/10 16:34
Excel全然使った事ないんですが…(パソコンは使えます)質問なんですが。
今バイト先で二万件近く縦に並んだ単語があるんですが
これのだぶっている分を集計しろ。とのパソコンを使ってるとは思えない作業があるんですが
エクセルでだぶっている単語(例えば ビデオ ビデオ類 ビデオ屋)
などのビデオという単語で選びだしその分を集計したりできる機能はないのでしょうか?
何卒ご教授下さい。
535外久保:02/07/10 17:17
>>534
オートフィルでは
536名無しさん@そうだ選挙にいこう:02/07/10 17:18
エクセル97です。
再計算を決まった回数だけ繰り返すにはどうしたらいいでしょうか。
具体的には

       A        
1    =2*RAND()
2    =RAND()
3    =if(A1>A2,1,0)
4    =A3+A4

のような表を作り、10万回程度計算を繰り返し
(F9を10万回手動で押せばいいのでしょうが、それを自動で)
A1>A2となる確率を求めたいのです。

537名無しさん@そうだ選挙にいこう:02/07/10 17:41
>>488
漏れの場合はシートを2つ使てるよ。
片方に空のイメージを貼付けておいて

Sheets("フォーム").Cells(y1, x1) = i
Sheets("フォーム").Cells(y2, x2) = Sheets("テーブル").Cells(i, x0)
Sheets("フォーム").Image1.Picture = LoadPicture(Sheets("テーブル").Cells(i, x0))
こんなカンジ
ちなみに i はスクロールバーで変化させて、変化があったらマクロ実行。
538名無しさん@そうだ選挙にいこう:02/07/10 17:58
オートフィルとはどこにあるのでしょうか?
539名無しさん@そうだ選挙にいこう:02/07/10 18:18
データ→フィルタ→オートフィルタにチェック
▼クリックで(オプション...)選択→抽出条件の指定
>>536
こんな感じでどうよ。
A1に =2*RAND(), A2に =RAND()が入ってるものとして、
A5に試行回数、A4に条件に一致した数を入れる。
(RAND()で生成される乱数がどんなものかについては、漏れはしらんよ)

Sub test()
 &nbs; &nbs;Dim l As Long
 &nbs; &nbs;Range("A4:A5").Clear
 &nbs; &nbs;For l = 1 To 100000
 &nbs; &nbs; &nbs; &nbs;Calculate
 &nbs; &nbs; &nbs; &nbs;If Range("A1") > Range("A2") Then
 &nbs; &nbs; &nbs; &nbs; &nbs; &nbs;Range("A4").Value = Range("A4").Value + 1
 &nbs; &nbs; &nbs; &nbs;End If
 &nbs; &nbs; &nbs; &nbs;Range("A5").Value = l
 &nbs; &nbs;Next
End Sub
うあ、ミスった
Sub test()
 &nbps; &nbps;Dim l As Long
 &nbps; &nbps;Range("A4:A5").Clear
 &nbps; &nbps;For l = 1 To 100000
 &nbps; &nbps; &nbps; &nbps;Calculate
 &nbps; &nbps; &nbps; &nbps;If Range("A1") > Range("A2") Then
 &nbps; &nbps; &nbps; &nbps; &nbps; &nbps;Range("A4").Value = Range("A4").Value + 1
 &nbps; &nbps; &nbps; &nbps;End If
 &nbps; &nbps; &nbps; &nbps;Range("A5").Value = l
 &nbps; &nbps;Next
End Sub
さらにミスってるし。宇津田氏...
Sub test()
    Dim l As Long
    Range("A4:A5").Clear
    For l = 1 To 1000
        Calculate
        If Range("A1") > Range("A2") Then
            Range("A4").Value = Range("A4").Value + 1
        End If
        Range("A5").Value = l
    Next
End Sub
543名無しさん@そうだ選挙にいこう:02/07/10 18:48
D1からD10までのセルに、ランダムに数値が入っているとして、
その数値に対し昇順で順位をつけ、それをE1からE10に入れたい
のですが、VBAでやる必要があります。
どうかご教授ください。
544名無しさん@そうだ選挙にいこう:02/07/10 18:56
>>542
536はセルの式だけで実現したいんだと思うよ。
字下げは &の後なんて打つの?
545542:02/07/10 19:20
>>544
>536はセルの式だけで実現したいんだと思うよ。
じゃ、漏れにはわからんよ。

>字下げは &の後なんて打つの?
&nbps;を半角で、半角スペース1個。
546544:02/07/10 19:37
>>545
&nbps; ありがと
教えてもらっておいて悪いけど
Range("A5").Value = l
は要らないんじゃない?
547544:02/07/10 19:40
あれ?

初心者板で練習しちきまーす。
548542:02/07/10 19:54
って、&nbsp;だってば>漏れ(o_ _)o
>> Range("A5").Value = l
要らないっちゃ要らない。
試行回数いじったときにあった方が便利かなと思ったからつけただけ。
549536:02/07/10 20:04
皆さんありがとうございます。
VBAは今まで一度も扱ったことがなくて、
Dim l As Long からして理解不能なのですが
(ヘルプを見て唸りましたが  lをLong変数として定義する?)
>>542を元にヘルプをみながら試行錯誤した結果

Sub test()
 Do Until Range("a5") = 100000
  Calculate
 Loop
End Sub

       A        
1    =2*RAND()
2    =RAND()
3    =if(A1>A2,1,0)
4    =A3+A4
5    =1+A5

で、とりあえずは用を足せそうです。
(おそらく無駄だらけで低速なのでしょうが)
表が大きくなって高速化が必要になったときにもう一度542の文を理解してみようと思います。
ありがとうございました。
  
550544:02/07/10 20:09
  どれどれ
入れるのならForNextの後、壱拾萬回のループの中は
ちょとキツイ。
カウンターの増える様子を表現したいなら別だども。
551名無しさん@そうだ選挙にいこう:02/07/10 20:27
マクロの含まれた別のブックをVBAから開こうとすると、どうしても
「マクロが含まれています…」とかいうダイアログが出るのですが、
そんなのは分かってるので、このダイアログを出さずに開く方法はないっすか?

このVBA以外から開こうとすると、一応ダイアログは出したいです。
素人も使うもので…
552544:02/07/10 20:34
Sub Test()
    Dim i, c as Long
    c = 0
    For i = 1 to 100000
        If Rnd * 2 > Rnd Then
            c = c + 1
        End If
    Next
    Cells(1,1) = c
End Sub
>>543
こゆこと?
Sub test()
    Range("D1:D10").Copy Range("E1")
    Range("E1:E10").Sort Key1:=Range("E1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
        :=xlPinYin
End Sub
>>551
うちの環境だと
Workbooks.Open "ファイル名"
で、マクロ入りのファイルでも警告なしにひらいちゃうけど、なんかいじったかな...?

Win2kSP2 + Excel2000
Win2kSP2 + Excel97
Win98SE + Excel97
555名無しさん@そうだ選挙にいこう:02/07/10 22:37
自動保存の設定を解除したいのですが、チェックを外しても
一旦ファイルを閉じると設定が復活してしまいます。
完全に解除する方法を教えて下さい。
556名無しさん@そうだ選挙にいこう:02/07/10 22:39
*表1*
┌─┬─┬─┬─┬─┬─┬─┬─┐
│A │1 │5 │9 │4 │7 │6 │2 │
├─┼─┼─┼─┼─┼─┼─┼─┤
│B │3 │2 │7 │3 │4 │1 │0 │
└─┴─┴─┴─┴─┴─┴─┴─┘
Bにある数字がAにある場合、Aの数字はそのままで抽出する表2を作る。

*表2*
┌─┬─┬─┬─┬─┬─┬─┬─┐
│A │  │5 │9 │  │7 │6 │  │
├─┼─┼─┼─┼─┼─┼─┼─┤
│B │  │2 │7 │  │4 │1 │  │
└─┴─┴─┴─┴─┴─┴─┴─┘

抽出した表を空白を作らずに、左に詰める表3を作る。

*表3*
┌─┬─┬─┬─┬─┬─┬─┬─┐
│A │5 │9 │7 │  │  │  │  │
├─┼─┼─┼─┼─┼─┼─┼─┤
│B │5 │7 │4 │  │  │  │  │
└─┴─┴─┴─┴─┴─┴─┴─┘

表1に数字を入力した時点で表3までが作成されるようにしたいです。
ご聡明なこのスレの方々、どうかよろしくお願いします。
>>555
ツール→アドイン
558556:02/07/10 22:44
>>556
表3でAの6とBの1が抜けておりました。
*表3*
┌─┬─┬─┬─┬─┬─┬─┬─┐
│A │5 │9 │7 │6 │  │  │  │
├─┼─┼─┼─┼─┼─┼─┼─┤
│B │5 │7 │4 │1 │  │  │  │
└─┴─┴─┴─┴─┴─┴─┴─┘
正しくはこれです。
559名無しさん@そうだ選挙にいこう:02/07/10 23:11
>>556 ルールが良くわからないのだが、下の表現であってる?

>Bにある数字がAにある場合、Aの数字はそのままで抽出する表2を作る。
Bにある数字がAにある場合、Aからその数字を消す。
Bにある数字がAにない場合、Bからその数字を消す。
560名無しさん@そうだ選挙にいこう:02/07/10 23:15
あ!あと、希望はどっち?(読解力なくてスマソ)
イ:入力してある表1を表3に置き換えたい。
ロ:表1を入力したら、表2と表3を自動的に作りたい。
561名無しさん@そうだ選挙にいこう:02/07/10 23:27
>553
レスありがとうございます。
説明不足ですいません。
具体的に言うと以下のような感じです。
D列|E列
 1|5
15|3
33|1
25|2
 8|4 
D列の数字の大きい順に順位付けをし、それをE列に投入したいのです。
手動でやると、C列に1、2,3と番号をふって、D列でソートし、E列
に番号をふり、C列でソートするという操作で、簡単にいくのですが・・・。
やっぱり、力技がいいのでしょうか?



562名無しさん@そうだ選挙にいこう:02/07/10 23:46
>>561
割り込みですが、一般機能の関数で云うと
E1=RANK(D1,D$1:D$5,0) これをE5までオートフィルの方が簡単です。

VBAなら、
Sub test()
For i = 1 To 5
  Cells(i, 5).Formula = Application.Rank(Cells(i, 4), Range("D$1:D$5"), 0)
Next i
End Sub

563556:02/07/10 23:52
>>559
レスありがとう〜!つか漏れの表現力の悪さに鬱氏

表の2では、
B行の中の数字がA行にあれば、そのB行の列を抽出して表の2を作る
というふうにしたい。
ex:
表1中のB行の2は、A行にあるから、表2でB行の2の列(A行5、B行2)を表示する。

逆にいえば、B行の数字がA行になければ、表2では表示しない
というふうにしたい。
ex:
表1中のB行の3、0は、A行にないから、表2ではB行3、0の列を表示しない

表3では、
表2の列を左に詰めて表示したいです。

あらかじめ表1、2、3を作っておいて、表1に入力があったら、表2、3に表示される
という感じにしたいです。(なので、表1に入力がなかったら表2、3にも表示がない)

>>559さん、おわかりいただけたでしょうか?
わかんねぇよヴォケ!!っていわれたらあきらめます(´・ω・`)
564559:02/07/11 01:07
>>556 理解した。一般機能で作ってみました。
表1の範囲 A1:H2
表2の範囲 A4:H5
表3の範囲 A7:H8 とします。

B4 =IF(B5="","",B1)            ←これをH4までオートフィル
B5 =IF(ISNA(MATCH(B2,$B1:$H1,0)),"",B2) ←これをH5までオートフィル

B7 =MID(CONCATENATE($B4,$C4,$D4,$E4,$F4,$G4,$H4),1,1)
B8 =MID(CONCATENATE($B5,$C5,$D5,$E5,$F5,$G5,$H5),1,1)
                           =
                           ↑
          H8までは、ここの数を順次 2、3、4…と変えた式とする。
        (column関数を使えば、コピーしても自動的に対応させれます。)

まどろっこしい表現になったが、宜しく。
565559:02/07/11 01:09
やっぱり、ずれた。

↑ は 後から2番目の「1」の部分を指してます。
566556:02/07/11 01:28
>>559
できますた!!すげー!
何をやっているかよく分からないけど、今からじっくり考えてみます!
ありがとうございました!
567名無しさん@そうだ選挙にいこう:02/07/11 01:32
教えてください。
をVBAを使って表1を表2のように移動させたいと思っています
表1
┌─┬─┬─┬─┐
│1 │2 │3 │4 │
├─┼─┼─┼─┤
│5 │6 │7 │8 │
├─┼─┼─┼─┤
│9 │10│11│12│
├─┼─┼─┼─┤
│13│14│15│16│
├─┼─┼─┼─┤
│17│18│19│20│
├─┼─┼─┼─┤
│21│22│23│24│
└─┴─┴─┴─┘
表2
┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
│1 │2 │3 │4 │5 │6 │7 │8 │9 │10│11│12│13│
├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│14│15│16│17│18│19│20│21│22│23│24│25│26│
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘
のようにしたいと思っています。
実際は8列16384行のデータを32行づつ上記のように横に並べて
256列を1行として最後まで並べ替えたいのですがどのようにすればよいのか教えてください。
5日間ほど本を読んだりネットを調べたりしたのですがどうにもなりませんでした。
お願いします。
568名無しさん@そうだ選挙にいこう:02/07/11 01:43
567ですが、
ExcelのVerは2000です。
OSはWin2Kです。
>>567
Sub AutoMove()
 Const myLimit As Long = 13
 Dim myRange As Range
 Dim x As Long
 Dim y As Long
 'Worksheets(2).Cells.Clear
 y = 1
 For Each myRange In Selection
  With Worksheets(2)
   If x >= myLimit Then
    x = 1
    y = y + 1
   Else
    x = x + 1
   End If
   .Cells(y, x) = myRange
  End With
 Next myRange
End Sub

これでいい?
選択範囲をシート2に移動させるんだけど・・・。
ちなみに折り返しはmyLimitで変えられる。
570561:02/07/11 02:10
>>562
ありがとう!!Rankというコマンド?(ステートメント?)があったのですね。
553さんもありがとう。
ところで、もうひとつお願いします。
ラベルを入れると、全部左端によってしまうのですが、これはどうにもならないのでしょうか?

>>570
コマンドじゃなくて、関数。
それもワークシート関数。WorksheetFunctionのヘルプ参照

ラベルは左端に寄るもの。あきらめる?使わない?ご自由にどうぞ
>>567
なんかサンプルの方がむつかしいような....
ってことで、8列16384行から256列512行へ。

Sub test()
    Dim i As Long
    For i = 1 To 16384
        Range(Cells(i, 1), Cells(i, 8)).Cut Cells(1 + ((i - 1) \ 32), 1 + 8 * ((i - 1) Mod 32))
    Next i
End Sub
573567:02/07/11 03:14
569 ありがとうございます。

572 ありがとうございます。
非常にわかりやすくシンプルで的確なVBAでただただ感心しました。
本当にありがとうございます。
574566:02/07/11 03:15
だいたい意味がわかりました。こんな考え方があるなんて、思いませんでした。やっぱすげぇ!
ただ、入力される数字が2桁ではうまく行かないのは、(このやり方では)どうしようもないでしょうか?

これをヒントにして、またいじくってみます。
575名無しさん@そうだ選挙にいこう:02/07/11 10:24
教えてください。
A-1〜A-16,B-1〜B-16,C-1〜C-16の計48教室があります。
生徒は1教室で15人います。
ピポットテーブルを使用してテストの合計額を表示しました。
しかし、ピッポトテーブルの並べ替えを行っても
A-1
A-10
A-11
A-12
A-13
A-14
A-15
A-16
A-2
A-3
となってしまいます。
A-1
A-2
A-3
|
|
A-9
A-10
A-11
とするにはどうすればよろしいのでしょうか?
質問の意味がわかってもらえるかな
576名無しさん@そうだ選挙にいこう:02/07/11 10:54
A-01とかでは駄目なの?
577532:02/07/11 11:27
SendKeys "{down}"
この後に一つ下に行ったセルを選択してコピー張り付けしたいんですけど
どうやってselectするんですか
教えてください
578名無しさん@そうだ選挙にいこう:02/07/11 12:51
offset を覚えたほうが、今後の為じゃないか?
>>577
SendKeys "{down}", True
Selection.Copy
何をしたいのかわかりづらいが、こういうこと?
580579:02/07/11 13:22
>>578
同意。
ただ、具体的に何をしたいかわかんないからアドバイスのしようも....
581577:02/07/11 19:04
>532
相対的な位置のセルの表し方

Range("B2").Cells(2,3) 
 → "B2"を基準セル(1,1)とし、2行目&3列目にあたるセル『D3』が指定される
Range(Range("B2"),Cells(5,6))
 → "B2"を最初のセル(1,1)とし、5行目&6列目にあたるセル『F5』を最後のセル
   とする範囲『B2:F5』が指定される
ActiveCell.Offset( 1,-3).Select
 → アクティブセルの1行下&3列左のセルが選択される
↑の名前は
×577
○578 の間違いでした。
583ゆう:02/07/11 20:24
えっと、教えて欲しいのですが、
94.0や88.0等と言ったような(〜.0)数字を書いた時に
前(上下)に書いた数字と微妙に位置がずれてしまうんです。
何とか同じ感覚にそろえることはできませんか?

それから、グラフを書いた時にそれに線をひきたいんです。
そのグラフは決まった点を通るのではなくだいたいの位置感覚でひいていきたいんです。
どうやってひくんですか。教えてください。
>>538
どういう風になってるかわからないけど、プロポーショナルフォントをやめたら?

グラフの目盛り線の設定が気に入らないってこと?
自分で直線のオートシェープで書けば?
585名無しさん@そうだ選挙にいこう:02/07/11 21:40
エクセルで作った文書の文字カウントをしたいのですが
ワードにコピペだと、いらないスペースとかが混じってしまうようです。
一般的にはどういうふうにするものでしょう?
586583:02/07/11 21:49
>>584
えっとですね、つまり 59.3
59.0
と言ったように微妙ですが、上の方に書いたやつとは位置が異なるんです。
これは、他の数字で終わるときは大丈夫なんですが
(〜.0)のときだけはずれるんです。どうにかなりませんか?

それは自分でひくんですか?
それはいったいどうやるんですか?お願いします。
587名無しさん@そうだ選挙にいこう:02/07/11 22:01
>>583
数字の位置ズレについて、設定について出来るだけ具体的にお知らせ下さい。
もっと具体的なアドバイスが来ると思います。
*セルの書式設定の中の
「表示形式」「配置ー横位置」「フォント名」
*他にも設定しているモノなどあれば。

グラフについて
図形描写を使った、直線の引き方はご存知ですか?
解るらなければ、「図形」や「図形、作成」などをキーワードにしてヘルプを
見てください。 
588583:02/07/11 22:12
>587
え〜っと…すべて標準?なんですが
何も設定は変えていないんです。

グラフはさっそく調べてみます。
だから,フォント名は?
まるきっりの標準そのままでは「59.0」と入力したら、
「59」としか表示されないでしょう?
具体的に回答しぃ。キレルデェ。
590583:02/07/11 22:25
>>587
はい。59って言うふうに表示されましたよ?
だからそれを、〜.0と言ったような感じにしたいのです。
ちなみにMSPゴシックです。
お願いします。
←.0
.00 みたいなアイコンがありますから、
目的のセルを選択した上でそのアイコンををクリックしてください。

583さんの状況はズレルって言うんじゃなくて、「59」としか表示されないって言うんです。
584さんも自分も、小数点の位置が微妙にずれるとか違う状況を想像してました。
ネット上では相手のパソコンは見えません。
自分にとっては当たり前の事でも、具体的に表現しましょう。
回答もしやすいく、より適切なアドバイスが貰えますよ。
592   :02/07/11 22:35
>>583
右クリック
セルの書式設定
表示形式−数値
小数点以下の桁数を1にする。
でどないや?
>>583
プロポーショナルフォントを使わない。
若しくは、プロポーショナルの意味を理解した上で使う
594581訂正:02/07/12 09:52
581の3番目の例、間違いに気付いた。
今、ケータイなので後で書き直す。
595595:02/07/12 11:27
ずれたセルを右クリック。
セルの書式設定→表示形式のユーザー定義
→0.00_となっていたら_(アンダースコアっていうの?)を削除。
596595:02/07/12 11:32

>>583
でした。
もしくはユーザー設定で
0.0
と入れてしまう。
597 :02/07/12 12:22
>>593 >>595
583の「微妙に位置がずれてしまうんです」つのは
「はい。59って言うふうに表示されましたよ?
だからそれを、〜.0と言ったような感じにしたい」事らしいので、
そんなデリケートな問題ではないらしい。(w
598名無しさん@そうだ選挙にいこう:02/07/12 12:22
エクセルを完璧にマスターしたくて(上級以上の知識)、
学校に通おうと思っていますが(当方大阪)、
お勧めのところとかご存知なら教えて下さい。
なお、「そんなの独学でもできるやろ」のようでしたら、
どのような勉強方法が良いがアドバイス宜しくお願いします
>エクセルを完璧にマスター
MicrosoftのExcelを開発してる部署に就職とか?
600581:02/07/12 12:48
>>594
PCで落ちついて見たら、間違ってませんでした。(多分…)
お騒がせしますた。
601583:02/07/12 17:28
みなさんありがとうございました。
たくさんの人から意見もらいました。ありがとうございました。
おかげでなんとかできました。
602_:02/07/13 01:29
Excel2000で散布図を描こうとしています。
データポイントを折れ線でつないだ散布図にした場合、
数百ものデータがあるとマーカーが近接しすぎて見辛くなってしまいます。
そこでマーカーを数個おきに表示させたいのですが、やり方が見つかりません。
間引いたデータを新たに用意しなくちゃならないのかな?
>>602
たぶん、間引きしたデータを用意しなきゃならないと思う。

その前に、マーカーの設定を変えるのは試したか?
サイズを最小の2ポイントまで下げると、だいぶスッキリする…
他にもスタイルを小さなものに変える。
背景の色を「なし」にするなど、も効果があると思う。

でもやはり、間引かなきゃならないという時は、折れ線に本来のラインを保持させる為には
1、もとのデータ系列はそのままで、「マーカー無し」にする。
2、間引いたデータ系列を追加し、こちらは「線無し」で、マーカーの色をもとデータ
 の線の色に合わせる。
がいいかと思う。

直接の回答は出来ないのに、余計なお世話ばかりスマソ。


604名無しさん@そうだ選挙にいこう:02/07/13 04:45
マーカーを間引くのできるよ。
今どきExcel4.0のマクロだと、↓こんな感じ。当然VBでもできるけどオレはこちらの方が得意なので。

一つ置きにマーカー
=SELECT("S1")
=PATTERNS(,,,,2,,,,)全マーカー削除

=FOR("i",1,30,2)1番目から30番目まで一つ置きに
=SELECT("S1P"&i,TRUE)
=PATTERNS(,,,,0,1,1,2,FALSE)マーカー設定
=NEXT()

=RETURN()


まあ、>>603の言うようにマーカーなしにするか、線なしにする方が手っ取り早いとは思うけど。
605名無しさん@お腹いっぱい。:02/07/13 10:47
>602

グラフを選択した状態で実行

Sub Macro1()
Dim Sobj As Series, Pobj As Point, Pos As Integer
Application.ScreenUpdating = False
On Error Resume Next 'データが飛んでたらエラーになるので一応
With ActiveChart
For Each Sobj In .SeriesCollection
Pos = 0
For Each Pobj In Sobj.Points
Pos = Pos + 1
'3つおきの場合
If Pos Mod 3 <> 1 Then _
Pobj.MarkerStyle = xlMarkerStyleNone
Next
Next
End With
Application.ScreenUpdating = True
End Sub

XL97で試験ずみです。
606605:02/07/13 11:02
↑ 二つおきの間違い。3つに1つプロットでした(1,4、7...でプロット)
607名無しさん@そうだ選挙にいこう:02/07/13 13:35
表が書かれた紙にエクセルを使って、文字だけ印刷したいのですが
セルの高さと幅をmm単位で設定できますか?
ワードの罫線を使った表だと、mm単位で指定できるのですが、
沢山罫線使うとワードが落ちるのとデータが多いのでエクセルを利用
して印刷とデータ管理をいっしょにしたいので。
verはどちらも2000です。
よろしくお願いします。
609aya:02/07/13 17:06
こういう折れ線グラフって作れるのでしょうか?ウィザード使っても作れなくて、困ってます。

データがこう並んでます。
番号 %
1  50
2  80
3  80
4 100
5  70


 0     50    100%
 |−−−−−−−−−−−−−−
1|
 |
2|
 |
3|
 |
4|
 |
5|
>607

労力考えたら、専用ソフトを使った方が無難。

ttp://www.silverstar.co.jp/ichiawase/ichiawase.htm
611名無しさん@そうだ選挙にいこう:02/07/13 18:24
>>609
散布図を作ってから、X軸とy軸を交換。
または、データの番号と%の位置を入れ換えてから散布図を作る。
その後、軸の書式でy軸の上下を反転。

くわしいやり方は、前に同じ質問に答えたことがあるので、このスレか前スレを探してみてくれ。
>>608 >>610
返答ありがとうございます。
教えてもらったソフトを試してみたいと思います。
Excelだと仕様で印刷した際にずれは仕方がないとかかれていました。
できなかった場合は専用ソフトも考えてみます。

予め書かれた表は4mmの項目が沢山あり、フォントサイズ6で考えてい
ますが、できるところまでやってみます。
613aya:02/07/13 19:52
>>611
回答していただきありがとうございます。じゃあ、既出のを探してみます! と思っていたのですが・・・。
2ch検索が立ち上がらない・・・。
614611:02/07/13 21:10
>>609, >>613
思い返すと、過去の回答では結構面倒なことを書いたので、単に、
データの番号と%の位置を入れ換えてから散布図を作り、軸の書式でy軸の上下を反転。
とした方がいいかも。
615aya:02/07/13 21:41
>>611
ありがとうございます。私もそうかなぁ・・・と思ってやってみたのですが、
表を行と列を入れ替えてグラフを作っても、入れ替える前と同じグラフになるんですよねぇ・・・。
どうしてでしょう?(T.T)
616611:02/07/13 21:56
>>615
ウィザードでちゃんと散布図を選んでる?
617aya:02/07/13 22:32
>>611
選んでますよぉ・・・。(T.T)
どうやれば、x軸が%になってくれるのでしょう?
618ごめん・・:02/07/13 22:39
ちょっとうまい言い方が見つからないのですが、エクセル同士での
差し込み印刷みたいなものはできないのでしょうか?
いろいろ検索してもVBAを使うのしか見つからなくて・・
具体的に言うとシート1にあるデータをシート2にある
印刷フォーマットに乗っけて連続して印刷するということ
なのですが・・
エクセルで、印刷する土台のフォーマットを作ってしまったので
ワードの差し込み印刷は使えなくて。
>>618
Vlookupを使うのはダメ?
>>618

そんなんVBAとVLOOKUPで簡単。
Sheet1のA2〜AxxまでVLOOKUPのキー
Sheet2のA1に連続入力

Sub Test()
Dim r As Range, myRange As Range
 Set myRange = Sheet1.Range("A2:A" & _
   Sheet1.Range("A65536").End(xlUp).Row)
 For Each r In myRange
   Sheet2.Range("A1") = r
  ' Sheet2.PrintOut
 Next r
End Sub
621602:02/07/14 00:01
>>603,4,5
返答ありがとうございます。仕事で返事が遅れました。
やはりデータを間引いてやる必要があるようですね。
LINUXでデータ取りしているので、そちらでデータを作り直そうかと思ってたのですが、
せっかくですので604さんや605さんのマクロも勉強させてもらいます。
622602:02/07/14 00:09
追記
これまでマーカー無しのグラフだったけど、如何せんモノクロで印刷するので
10種くらいデータが重なると、太さとか線種を変えても見づらいんですよね。
プレゼン資料を作るのはまだ慣れてないので、全てが勉強になります。
623ごめん:02/07/14 00:15
>>619,620
お二方ともアドバイスありがとうございます。
それで、シート1を参照して印刷したいのは一カ所ではなく
三カ所ほどあるのですが、その場合は
Dim r As Range, myRange As Range
 Set myRange = Sheet1.Range("A2:A" & _
   Sheet1.Range("A65536").End(xlUp).Row)
 For Each r In myRange
   Sheet2.Range("A1") = r
の部分の行、列の部分を適宜変えて、3つ続けて書けば
いいのでしょうか?
624360:02/07/14 00:20
エクセルでXY平面に
X=f(a,b) Y=g(a,b) の二変数関数を書く方法も教えてください。

X=〔(αa+βb)/(γa+βb) −1〕×10^4
Yも同じ形でギリシャ文字の数字が違います
a,bは整数で任意です。 a、bには関連はないです
a、bはxy平面のグラフにでてくるひつようはないんです。
が書きたい形です 
625360:02/07/14 00:21
あ、ギリシャ文字は定数です
626名無しさん@そうだ選挙にいこう:02/07/14 01:01
>>624
専用ソフトを使う方が楽ではあるが、
aとbを定義域内で動かし、それによって求められたXとYで散布図を書く。

ということしかあり得ないと思う。
627360:02/07/14 01:36
専用ソフトにはどんなのがあります?
628619:02/07/14 02:02
>>623
コードは620ので良いと思う。
(変えてあげるのはVlookupの第3引数だけ)
まずVlookupのヘルプを見ること!
629618:02/07/14 02:08
今いろいろ調べてます(w
第3引数・・・
ヘルプを読もう(w
630626:02/07/14 11:11
>>627
グラフを書くソフトは山ほどある。無料から数百万するのまで。
化学か生物か数学か物理か、自分の研究分野でよく使われているのを先輩などに聞いてみたら。

>>624
媒介変数が2つだと、一般には3次元上の面になると思うけど、
この式を良く見ると、実質的に媒介変数はt=b/aの一つだけなので、
それを消去すれば双曲線になるようだけど。
631名無しさん@そうだ選挙にいこう:02/07/14 12:59
今、エクセルを使って新聞のスクラップブックを作ってるのですが、
ハイパーリンクをかける作業を簡単にするマクロを教えていただけないでしょうか?

今やってる作業を書くと
あるサイトからpdfファイルをローカルに保存
→エクセルのあるセルに新聞のタイトルを書き込む
→そのセルにハイパーリンク(Ctrl+K)
→「ハイパーリンクを挿入」のウィンドウの「ブラウズしたページ(Alt+B)」
→「ブラウズしたページ」一覧の一番上に保存したファイルが表示されているので「↓」キーでそれを選択
→「Enter」キー

という具合にやっています。

几帳面じゃないせいで、新聞をかなり溜め込んでやっているような状態なので
この作業も相当な回数こなさなければなりません。
この一連の作業を一発でできるようにすることはできないでしょうか?
632エクセルマソ:02/07/14 14:33
>>631

このマクロを保存したファイルがあるフォルダ内と子フォルダ内のPDFファイルにリンクを貼る

Sub HogeHoge()
With Application.FileSearch
 .NewSearch
 .LookIn = ThisWorkbook.Path
 .FileName = "*.pdf"
 .SearchSubFolders = True
 If .Execute() > 0 Then
   For i = 1 To .FoundFiles.Count
     ActiveSheet.Range("A" & i) = Dir(.FoundFiles(i))
     ActiveSheet.Hyperlinks.Add Range("A" & i), .FoundFiles(i)
  Next i
 End If
End With
End Sub
633名無しさん@そうだ選挙にいこう:02/07/14 16:24
エクセルのグラフの軸の範囲を自動にしておいて、元データの部分だけを
書き換えると時々範囲が明らかに変なとき(たとえば45から65くらいの
データしかないのに、y軸が0からになっているとか)があります。
再現性がよくわからないのですが、どうしたらよいでしょうか。
グラフの軸の範囲をどこかのセルに書いておいて、そこを参照させに
いくとかできませんか。
634名無しさん@そうだ選挙にいこう:02/07/14 17:10
マクロならできるけど。
With ActiveChart.Axes(xlValue)
.MinimumScale = 50
.MaximumScale = 100
End With
とか。
635名無しさん@そうだ選挙にいこう:02/07/14 18:06
>>634
一度書いたグラフの軸範囲をマクロで変更できるということですか?
どうやったらいいか教えてもらえませんか。
636  :02/07/14 21:04
テストのたとえば満点の80%以上ならAを,40%以下ならCをその中間ならBをつけたいとき,どういう
関数のどんな式を入れればいいのですか。教えてください。あまりに無知でごめんなさい。
637634:02/07/14 21:17
>>635
メニューからマクロの記録をしてみて、手動で軸の最小値最大値などを変えると、
634のようなマクロが自動作成される。
この例のマクロだと、現在表示されているグラフの軸が50〜100になる。

50と100のところを、手動なりセル参照なりにすればよい。
ヘルプやマクロについての解説書などを見るとくわしく書いてあると思う。
638名無しさん@そうだ選挙にいこう:02/07/14 21:18
>>636
ヘルプで、IFの項目を見よ。
エクセルのVBAで質問です。
自身のウィンドウのタイトルバー(通常「Microsoft Excel - ファイル名」)の
内容を変えるにはどうしたらいいでしょう?
多分WorkbookオブジェクトかWindowに
該当するプロパティがありそうなんですが…。
(ユーザーフォームならCaptionプロパティで設定できますよねえ…)
>>639
自己レススマソ。
ネット捜したらありますた。
Application.Captionでできますね。
641名無しさん@そうだ選挙にいこう:02/07/15 14:37
Excel97使用時、
挿入→図→ファイルから、を選択したときに
右側に画像ファイルのプレビューが表示される筈なのですが
ファイルによって表示できる物と「プレビューが表示できません。」と
表示され出来ない物があります。
画像(JPG)なんですが、IE等で正常に表示されます。
なぜ表示されないのでしょうか?
OSはNT4です。

642ぶか:02/07/15 15:14
同一データを削除するのはどうしたらいいのでしょうか?
643エクセラン:02/07/15 18:37
はじめまして。
列Aと列Bの各セルにある全てのデータの差を行毎に行って、
隣の列Cの同じ行のセルにその結果を一度に表示させるにはどうすればいいですか?
1行毎なら、結果を表示したいセルを選択して、SUM(A1-B2)でできますが、
列全体を一度にやる方法がわかりません。
OS/XP、エクセル2002/SP-1を使用しています。エクセル初心者です。
お願いいたします。
644名無しさん@そうだ選挙にいこう:02/07/15 20:30
>>643
セル範囲で選択して、数式バーに式を入れ、[Ctrl]+[Enter]で確定。
選択していた全セルに、同様の式が入る。
C列全てに入れたいなら、先に列番号のCのところをクリックしてから
式を入れて[Ctrl]付きで確定すれば良いが… 65536行目まで入るよ……ソンナニイル?

あと、式のコピーやオートフィルはもう覚えた?
普通、A1値からB1値を引いた値を知りたい時は「=A1-B1」でよい。SUMは付けない。
645エクセラン:02/07/15 21:09
>>644
すごい!できました。感動です。
ヘルプもサイトも探し回って見つからなかったのに、こんな簡単な仕事が
どうして出来ないんだ!とヤキモキしてたんですが、よかったです。
どうもありがとうございます。
エクセルは面白いですね。
[Ctrl]など、こういう面白い操作を知っているのと知らないのとでは
天地の差があるなと痛感しました。(もっとも応用の利く頭も持ち合わせて
ないと宝の持ち腐れですが・・(爆)
オートフィルは教えて頂いた今、初めて知りました。


>>642
VBAでいい?

例えば以下のようにデータがあるとして、
ColumnAColumnB
a1
b2
b1
c1
b1
e2
a2
a1
c1

Sub aaa()
 Dim x As Long
 Dim y As Long
 Dim i As Long
 With ActiveSheet
  With .UsedRange
   x = .Columns.Count
   y = .Rows.Count
  End With
  Range(Cells(1, "A"), Cells(y, x)).AdvancedFilter _
    xlFilterInPlace, unique:=True
  Range(Cells(1, x + 1), Cells(y, x + 1)).SpecialCells(xlCellTypeVisible) = True
  .ShowAllData
 End With
 For i = y To 1 Step -1
  With Cells(i, x + 1)
   If Not .Value Then
    .EntireRow.Delete
   End If
  End With
 Next i
 Cells(1, x + 1).EntireColumn.Delete
End Sub
647646:02/07/15 23:39
コピー失敗した。スマソ
ColumnA ColumnB
  a       1
  b       2
  b       1
  c       1
  b       1
  e       2
  a       2
  a       1
  c       1
こっちに訂正して
648名無しさん@そうだ選挙にいこう:02/07/16 20:00
心理学の学生なのですが、エラーバーについて質問です。
エラーバーは「誤差範囲の書式設定」で設定するのはわかったのですが
同じ系列で、データが一方は正、一方は負という場合はどのようにすれば正しくつくのでしょうか?
「両方向」「正方向」「負方向」って選択肢がありますけど、みんな同じ方向についてしまうって感じに見えたので・・・。
649名無しさん@そうだ選挙にいこう:02/07/16 22:37
成績表を作っています。
何度かやったテストの点数を合計して、得点率を%であらわすには、
どんな関数を使ったらよいのでしょうか?
いろいろ探したのですが、初心者には関数の説明そのものが難しくてよくわかりませんでした・・。

    国語  算数  理科  社会  合計  得点率
山田 80   78   57   92
佐藤 40   88   90   64

こんな感じです。合計の欄はSAMですよね。
得点率を%であらわしたいです。
どなたかご教授お願いいたします。
平均点とは違うの?
651649:02/07/16 23:03
>>650
はい。言われてみればAVERAGEでした。ありがとうございます。
でもそれを%であらわしたいです。
セルの書式設定で%表示にすると、7167%とかいうわけのわからない数字になってしまうのです・・。
>>651
=AVERAGE(開始セル:終了セル)/100
653649:02/07/16 23:22
>>652
できました! どうもありがとうございますm(_ _)m
654名無しさん@そうだ選挙にいこう:02/07/17 09:35
在庫管理のフリーソフトって無いですか?
先輩がた、よろしくお願いします!
・Excelファイルを開いたとたんに作ったユーザフォームを自動的に開くことは出来ないっすか?
・配布した際、VBAで作ったコードを見られないように出来ませんか?
656648:02/07/17 12:51
昨日の書き込みじゃちょっとわかりにくかったかもしれないので
図にしました(初めてAAエディタ使ったw)

│              
─1.0                 
│                 
│                 
│                  


│                  ━
─0.5                 │
│                  │
│                  │
│                  │
│               ──────
│             │        │
│0  使用前       │        │
 ───────────────────
││        │     使用後
││        │
││        │
││        │
│ ──────
│     │
─-0.5   │
│     │
│     │
│     ━


─-1.0



ずれててスマソ
例えばこういうエラーバー(標準偏差付き)のグラフを書きたいのですが
グラフをどういじればいいのでしょうか?

あ、Excelは2002、OSはXPです
>>655
>・Excelファイルを開いたとたんに作ったユーザフォームを自動的に開くことは出来ないっすか?
ThisWorkBookのOpenイベントにユーザーフォーム名.Showを記入する

Private Sub Workbook_Open()
  UserForm1.Show
End Sub

>・配布した際、VBAで作ったコードを見られないように出来ませんか?
パスワード解読ツールを使えば簡単に見られちゃうんだけど
VBエディタの ツール>VBAProjectのプロパティ>保護タブでパスワードを設定してロックするとか
658655:02/07/17 20:31
>>657サン
ありがとうございます!
簡単に解読できるツールがあるのですか。
まぁ、使うのがオヤジばっかなので大丈夫な気がします。

ちなみに、メニューバーやツールバーをある程度制限することって出来ませんか?
上書き保存なんかは使わせたいですが、いろいろ弄って動かなくなったら
またホネなので…。
おながいします。
>>658
>>90のファイルにツールバーとメニューバーの表示非表示を切り替えるマクロがのってるよ。
660名無しさん@そうだ選挙にいこう:02/07/17 21:33
教えてクンですみません。
とても初歩的なのですが、VBが入っていなくてもマクロは使えますか?
エクセルは2000で、
OSはWin98です。
661 ◆cU73Ou.g :02/07/17 22:08
テスト
>>660
Excelをインスコしてれば大丈夫。
ツール→マクロでマクロは使えるし、
Excel起動した状態でAlt+F11でVBEを起動。
663660:02/07/17 22:22
>>662
親切にありがとうございます!
助かりました。
>>663
標準でインストールしてるなら、VBAのヘルプ入ってないから
別途セットアップ必要です。私も初心者ですが結構役にたつよ。
665名無しさん@そうだ選挙にいこう:02/07/18 11:25
セルに「5−1」(5年1組)と入力すると、「5月1日」と勝手に表示されてしまいます。
セルの書式設定を標準にすると「37377」になってしまいます。
どうなおせばよいのでしょうか?
666665:02/07/18 11:57
自己レスです。
文字列を選択したらできました。
おさわがせしました。
667名無しさん@そうだ選挙にいこう:02/07/18 17:41
ここで聞くのが正しいかもわかりませんが、聞いてください。
(エクセル2000を使っています)

見積書を作って使っています、新しい見積書を作る作業を
ボタンにマクロを登録して「テンプレートとしているシートを
コピーして新しいシートを作っています」。

そのボタンを押した時に、「ウインドウが開いて新しいシートの
名前を聞いてきて、入力してOKすることで、新しいシートに
名前が付いている」
こんな事をやりたいのですが、どんなことをすれば可能か?
ヒントやURLだけでもけっこうですので教えて下さい。
668名無しさん@そうだ選挙にいこう:02/07/18 18:15
>>667 InputBox
669名無しさん@そうだ選挙にいこう:02/07/18 18:16
>667
Sub Macro1()
Dim 新規見積書 As String
新規見積書 = InputBox("新規見積書-タイトル")
Sheets.Add Type:="テンプレ.xlt"
Sheets("テンプレのシート名").Select
Sheets("テンプレのシート名").Name = 新規見積書
End Sub

これでいいの?
ほとんどマクロの記録で出来んだけど
何か望みと違うような気がしてきた。
670名無しさん@そうだ選挙にいこう:02/07/18 18:56
こうかな?っと  >「テンプレートとしているシートをコピーして…」
669さん、一部借りました。
Sub ABC()
  新規見積書 = InputBox("新規見積書-タイトル")
  Sheets("テンプレのシート名").Copy Before:=Sheets(1)
  Sheets("テンプレのシート名 (2)").Name = 新規見積書
End Sub
671667:02/07/18 20:29
668-670さんベリーサンクスです

こんなに簡単な物とは・・・、ネットや本で何日も探していたのに〜
一度逝かないとダメですかねxxx
672名無しさん@そうだ選挙にいこう:02/07/18 20:42
教えてください。環境はOS:Win2000 Excel:Ver2000です。
表1を表2のように上から順に任意の数だけ(この場合3セル)
左にシフトさせるにはどのようにすればよいでしょうか?

┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
│1 │2 │3 │4 │5 │6 │7 │8 │9 │10│11│12│13│
├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│14│15│16│17│18│19│20│21│22│23│24│25│26│
├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│27│28│29│30│31│32│33│34│35│36│37│38│39│
├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│40│41│42│43│44│45│46│47│48│49│50│51│52│
├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│53│54│55│56│57│58│59│60│61│62│63│64│65│
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘
表1
┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
│1 │2 │3 │4 │5 │6 │7 │8 │9 │10│11│12│13│
├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│17│18│19│20│21│22│23│24│25│26│  │  │  │
├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│33│34│35│36│37│38│39│  │  │  │  │  │  │
├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│49│50│51│52│  │  │  │  │  │  │  │  │  │
├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤
│65│  │  │  │  │  │  │  │  │  │  │  │  │
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘
表2
実際は、縦512行横256列の表です。
お願いします。
673エクセルマソ:02/07/18 21:37
>672

例なら 1 のセルを選択して実行

Sub Test()
Dim delcnt As Integer, cnt As Long
 delcnt = Application.InputBox("ナンボ削るんや", "ゴラァ", 3)
 cnt = 1
 Do While ActiveCell.Value <> ""
   ActiveCell.Offset(1, 0).Select
   ActiveCell.Resize(1, delcnt * cnt).Delete xlShiftToLeft
   cnt = cnt + 1
 Loop
End Sub
>>666
選択するの面倒なら、「'」アポストロフィーでも良いよ。
675名無しさん@そうだ選挙にいこう:02/07/18 23:40
673 ありがとうございます。
驚くほどのスピードで返していただき驚きました。
修行してきます。
676名無しさん@そうだ選挙にいこう:02/07/19 00:01
675
日本語も勉強してきます。
677エクセルマソ:02/07/19 00:39
>676

それがいい
678名無しさん@そうだ選挙にいこう:02/07/19 08:49
こんにちわ。Excelで英語/日本語の表現をたくさんの項目で
細分化されたデータベースを作っているんですが、
アプリを終了して次に立ち上げると一部のデータが勝手に書き換えられて
います。1から10の項目が合ったとして2から6までが全く違う
セルからコピペされたような状態でもとのデータが消失します。
iMac
MacOS9.2
Microsoft Office 2001(英語版)
です。
一度、マシンがExcelで作業中にクラッシュしてそれ以来の現象だと
思うんですが、その時にファイルが壊れたと言うことでしょうか?
やはり新しいファイルで1から作りなおすべきでしょうか?
データが書き換えられるのはだいたい同じ場所なのですが。
そんなはずはなにのにNot Enough Memoryというアラートが
出たこともあります(そのファイルは捨てました)。
679名無しさん@そうだ選挙にいこう:02/07/19 10:20
自分の環境ではないのですが、相談を受けて困ってます。
Win98でExcel 2000を使っているのですが、
スタートメニューから起動すると普通に日本語なのに、
XLSファイルを開いて起動するとメニューバーなどがすべて英語表示になります。
エクスプローラの関連付けも特に変なことはなく
「"C:\Program Files\Microsoft Office\Office\EXCEL.EXE" /e」のままでした。
不思議なことにファイル名を指定して実行から
「"C:\Program Files\Microsoft Office\Office\EXCEL.EXE" /e」とすると英語モードで、
「"C:\Program Files\Microsoft Office\Office\EXCEL.EXE"」とすると日本語モードで起動します。
常に日本語表示の状態にするにはどうしたらいいんでしょうか?
680名無しさん@そうだ選挙にいこう:02/07/19 11:02
入力規制のリストにセル範囲を指定すると
シートを保護しても値が選択できてしまう
Excel 97 と 2000 で発生し 2002 ではならん
どういうこと?
681名無しさん@そうだ選挙にいこう:02/07/19 11:32
Excel:2000
OS:Win2K
┌─┬─┬─┬─┐   ┌─┬─┬─┬─┐
│1 │2 │3 │4 │   │2 │2 │10│10│
├─┼─┼─┼─┤   ├─┼─┼─┼─┤
│5 │6 │7 │8 │   │10│30│10│10│
├─┼─┼─┼─┤   ├─┼─┼─┼─┤
│9 │10│11│12│   │10│10│15│10│
├─┼─┼─┼─┤   ├─┼─┼─┼─┤
│13│14│15│16│   │10│30│20│10│
└─┴─┴─┴─┘   └─┴─┴─┴─┘
     表1             表2  を
2個の表の各セルを足して下記のようにするにはVBAを使わずにできるのでしょうか?
┌─┬─┬─┬─┐
│3 │4 │13│14│
├─┼─┼─┼─┤
│15│36│17│18│
├─┼─┼─┼─┤
│19│20│16│22│
├─┼─┼─┼─┤
│23│44│35│26│
└─┴─┴─┴─┘
できそうな気がして調べていたのですができそうに無い・・・・
VBAだとどうなるのでしょうか?教えてください。
682名無しさん@そうだ選挙にいこう:02/07/19 12:41
>681
状況が解らん
3個の表が元々あるのか?
足し算の式書きたくないのか?
>>682
あまりにも基本的なことなんでおれはあえて放置してたぞ(w
684名無しさん@そうだ選挙にいこう:02/07/19 13:53
>>681
こぴー、形式を洗濯してはりつけ、かさん

>>683
まぁまぁそう言わずに
開かれていないワークブックを開いて変数に格納したいのですが、
Set mybook = GetObject("C:\test.xls")
とすると、外部ファイルへのリンクがある為ダイアログが出てウザいので、前に
Application.ScreenUpdating = False
を入れても、このダイアログは止められないようです。

GetObjectを使わず、
Workbooks.Open FileName:="C:\test.xls", UpdateLinks:=3
で開けば、このダイアログを防げるのですが、GetObjectを使わずに変数に格納する
方法が分からないので困ってます。
何か良い方法はありませんか?
>>685
Open の後
Set mybook = Workbooks("test.xls")

ちなみに
ScreenUpdating はまったく関係ねーぞ
メッセージの非表示なら DisplayAlerts だ
まあどっちにしても質問の例では使えんようだが
687685:02/07/19 16:33
>>686
できました!どうもありがとうです。
あと、Screen〜は天然で一行上の行をコピペしてました。
すみません…。
688名無しさん@そうだ選挙にいこう:02/07/19 17:31
ど初心者です。助けて下さい。
言われるままに見積書を入力しています。
何故か価格や見積番号の数字を入力してEnterすると
値が勝手に100分の1に変換されてしまいます。
私は何をしてしまったのでしょう。
689なると:02/07/19 17:32
VBAでExcelを閉じる処理を作りたいんですが、
Book1.Application.Quitを先に書くと「保存しますか」と出るし、
Book1.Close SaveChanges:=Trueを先に書くとそこで処理が終わってしまって、
Excelの枠が残ってしまいます。
バタン!と終了させることはできないのでしょうか。
>>688
[ツール] - [オプション] - [編集] タブの
[小数点位置を固定する] のチェックをはずしぃ


>>689
Quit の前
Application.DisplayAlerts = False

他にずべてのブックの Saved プロパティを True にする方法もあるがな
691688:02/07/19 21:10
遅くなりました。690さん、ありがとうございます。
直りました。
そう言えば別の作業でそこを変えました。
当然かも知れませんが、これってずっと有効なんですね。
692えびお:02/07/19 21:16
VBAのフォームの事で誰かお答え願えませんか、、?
テキストボックスをスピンボタンと関連させて、
スピンボタンで数値を変える場合、
整数じゃなくて、時刻を扱いたいのですが、
どうしたら良さそうなのでしょう。
それから、ワークシートのあるセル範囲の数値で
違うセル範囲の条件付き書式を使うには、
どうしたら良いのでしょう、、。
例:作業簿を月・日・曜日・作業内容という項目で入力してます。
曜日を土曜と日曜だけ条件付き書式で「赤色」にしてます。
作業内容の欄に「週休」とか「祭日」と入った時に、
曜日が土日以外でも「赤色」になるようにしたいのです。
693pp:02/07/19 21:56
このサイトにはトヨゾウの被害はありませんか
694多分123:02/07/19 22:21
以前、このスレでお世話になった者です。
㍿と言う字なんですが、私のパソコンだと、ちゃんと印刷できるのですが、
会社のパソコンだと、・になって印刷されてしまいます。
会社PCでも、印刷イメージでは、ちゃんと㍿と出るのですが、印刷すると
・になってしまうのです。
両方ともOFFICE2000を使っています。
(無関係だとは思いますが、OSは会社が98SEで私がXP HOMEです。)
最初はプリンターの汚れのせいだと思い、プリンターをクリーニングしたの
ですが、それでも直りません。
ちなみに、ここで㍿の出し方を教わった次の日に、会社PCでやった時は
ちゃんと印刷されたのですが、2〜3日後に、再度印刷したら、・しか
印刷されなくなってしまいました。
自分でも無意識のうちに、何かしらの設定をいじってしまったのか否かは
記憶が定かではないんですが、何が原因と思われますか?
>>694
Excel云々の問題じゃなく、プリンタ側にそのフォントが無いから出ないの。
パソコンが送るデータがそのまま印刷される訳ではないってこと。
プリンタのプロパティで「フォントをイメージとして印刷」みたいな項目があったら
チェック入れて印刷しる。それで出なかったらプリンタが悪いってことで諦めれ。
>>694

プリンタのプロパティのどっかに、プリンタフォントに切替える設定がある。
>>692

月と日と曜日を別のセルに文字列として打ってるなら、

C2に文字列で土曜か日曜
D2に文字列で週休か祝日
条件付書式の「数式が」に =OR(C2="土曜",C2="日曜",D2="週休",D2="祝日")

日付でいれて表示形式を aaa にしてるなら、条件付書式の「数式が」に

=AND(C2<>"",OR(WEEKDAY(C2)=1,WEEKDAY(C2)=7,D2="週休",D2="祝日"))
698名無しさん@そうだ選挙にいこう:02/07/19 23:34
>>688
セルの書式の表示形式を確認。
なんか設定はいってたら、とりあえず「標準」を選択してみれ。
699名無しさん@そうだ選挙にいこう:02/07/19 23:37
>>689
頭に入れてみれ。
Application.DisplayAlerts = False
700名無しさん@そうだ選挙にいこう:02/07/19 23:40
データをエクセルじゃなくてCSVでくれと云われて
るんですが、どうやって変換したら良いのでしょうか?
またCSVからエクセルへの変換は??
701多分123:02/07/19 23:42
>>695-696
有難うございます。
週明けに試してみます。
702名無しさん@そうだ選挙にいこう:02/07/19 23:53
>>700
名前を付けて保存−保存形式
703名無しさん@そうだ選挙にいこう:02/07/19 23:55
>>702
それはやってみたんですが、
それだとエクセルのままじゃないんですか?
アイコン見るとエクセルのアイコンの様な気が
するのですが・・・
>>703

*.CSVは、Excelを入れると勝手にExcelに関連付けされる。
メモ帳などのテキストエディタで開いてみな。
705名無しさん@そうだ選挙にいこう:02/07/20 00:05
>>704
ありがとうございます。
できました。
横レスなんですが、
Application.DisplayAlerts = Falseとやると、メッセージボックスが
VbOkCancelなどのときは、勝手に[規定値]が選択されると考えて良いのでしょうか。
[変更を保存しますか?]だとYesが規定値ですよね。
707名無しさん@そうだ選挙にいこう:02/07/20 10:29
フォーミュラバーで、フォーミュラの小窓の左横の小窓は
なんというんでしょうか?
設定を変更したいのですが、なんと呼ばれているのか
分からないのでヘルプが使えないのです。
>>707
普段 A1 とか表示されてるところなら「名前ボックス」だとおもうけど?
709707:02/07/20 11:04
>>708
どうもです。
調べてみます。
710707:02/07/20 11:07
>>708
どうも。
その名前で調べてみます。
>>706
既定うんぬんじゃなくメッセージでの確認っつー処理をスキップしとるんだろ
つまり通常メッセージが出る直前の処理がそのまま実行されるだけ
712(´Д`):02/07/20 12:15
エクセルでIDを記入してたら070と打っても最初の0が消えるんですけど
どうすればいいですか?
713名無しさん@そうだ選挙にいこう:02/07/20 12:24
セルの書式設定>表示形式
で「文字列」を選択。

若しくは
「'070」
と入力する。
714(´Д`):02/07/20 12:28
>>713
神!
ありがとうございますた
715名無しさん@そうだ選挙にいこう:02/07/20 14:47
>>713さん
すみません便乗です。
そう言う設定はファイルごと(BOOKごとって言うの?)に
設定できますでしょうか。
716名無しさん@そうだ選挙にいこう:02/07/20 16:38
 お願いします、助けてくだすぁい。
フォトショップから取り込んで 挿入した写真が回転しないのです。
図形の調整から回転させようとしたんですが・・・。

たいていの写真ではできるのですが、時々このようなことがあります。
なぜでしょう・・・?
717名無しさん@そうだ選挙にいこう:02/07/20 16:48
質問です
時間表示で
5:30:00

0:05:30
にしたいのですが、今までは置き換えなどを使っていたのですが
もっと簡単な方法ってありませんか?
718名無しさん@そうだ選挙にいこう:02/07/20 17:53
>>717
>0:05:30
最初の0の部分は「何日」つうこと? ならば、表示形式で「d:h:mm」
もし、最初の0の部分が「秒」ならば「ss:h:mm」だが。
719名無しさん@そうだ選挙にいこう:02/07/20 18:08
いや、どっかのHTMLで書かれた時間(5:30)をコピペしたら
時間として5分30秒のつもりが5時30分0秒になってしまうんです
これを簡単な方法で5分30秒に戻したいのですが…
720名無しさん@そうだ選挙にいこう:02/07/20 18:35
A1がコピペしたセルだとして、別セルに「=A1/60」、表示形式は自由に。
721名無しさん@そうだ選挙にいこう:02/07/20 19:08
>715
ごめん そこまではわからん。
722名無しさん@そうだ選挙にいこう:02/07/20 19:25
>>715
「書式」−「スタイル」を使えば?
723名無しさん@そうだ選挙にいこう:02/07/20 21:32
>>720
ありがとう
その別のセルを数字化すれば良いんだな
724715:02/07/21 00:42
>>722
なるほど、そう使うんですね。
ありがとうございました。
質問です。セルに7-15と入れると、7月15日に変換されるのですが、セルの書式設定を変えずに変換されないようにできないでしょうか?
>>725
「'7-15」っていれろ
727名無しさん@そうだ選挙にいこう:02/07/21 17:35
>>726
ガイシュツ
みなさんすみません。
エクセルをつかっていろいろと計算をさせているものですが、最近は、エクセルのシートの右端まで式でうまってしまい、それとともに、計算がおそくていらいらすることが出始めました。

特に、たとえば、いったん縦2000行の計算をおこない、さらにそのうち、1000行のみを選択して、集計するために、該当行を削ります。そうすると、エクセルがしばらく考えこんで、約15分ほど待つこともあります。
そこで、相談です。
みなさま、エクセルを早く動かすPCってありますか。
エクセルが得意なPCメーカーとかチップってあるんですか。
教えてください。
>>728
AMD
730名無しさん@そうだ選挙にいこう:02/07/21 19:05
>>728
今使っているPCが非力なら、機種替えや機種選択は効果的。
しかし根本的には、そのシートの使用法に問題があるのでは?

あと計算はシート上の数式でさせるより、VBAでさせたほうが軽い。
自動計算でなくて良いならそれも一考の価値あり?
731名無しさん@そうだ選挙にいこう:02/07/21 19:32
そうね。
2000行x数百列の全部のセルのデータを毎回再計算させる必要があるのかどうか
考えた方がいいね。

それから、計算内容に依るけど、2000行のうち1000行削るより、
はじめから残りの1000行の方だけ計算するようなシートにした方がたいてい速い。
732名無しさん@そうだ選挙にいこう:02/07/21 19:55
このスレでアドバイスしてる人の社内評価を教えてください。
一般事務職員でこれだけの知識があると神扱いですか?
733名無しさん@そうだ選挙にいこう:02/07/21 19:59
無職ですが何か?
734名無しさん@そうだ選挙にいこう:02/07/21 20:19
>>633
データが変更されるとグラフの軸範囲が最適化されない現象の
原因ってなんでしょう。普段は適当な範囲に勝手に設定してくれるのに、
あきらかにグラフの下のほうにつぶれたグラフが書き出されたりします
(軸の範囲が余分な範囲まで含んでしまって)。
735名無しさん@そうだ選挙にいこう:02/07/21 20:30
質問です。
WSHスクリプト(JScript)からExcel内のコントロール(MSBarcord)に
アクセスしたいのですが、
1. WorkSheet.OLEObjects を使うことができない
2. WorkSheet.コントロール名 でアクセスできない
他に方法を調べても見つかってないのですが、できないってことでしょうか?

736名無しさん@そうだ選挙にいこう:02/07/21 20:38
非常にガイシュツかもしれませんが、
同じbookの各シートのフッターに順番にページ数をオートで記入することはできますか?
自分でマクロくまなきゃ無理でしょうか
>736

普通に全選択するなり、CtrlやShiftで必要なシートを
選択するなりすれば良いだけでは?
>>732
無料のパソコン教室の先生みたいな評価かもw
739名無しさん@そうだ選挙にいこう:02/07/21 21:33
sheet1でマクロ処理したものを
sheet2でコマンドボタンに入れようとするとエラーになってしますのですが、
これって不可能って事なのでしょうか?
教えてください。
お願いします。
>>739

どっかにシート1じゃないとダメな記述があるんだろ。
先頭に Sheet1.Activate を入れるとかすれば良いんじゃないか?

それでもダメならソースコードをアップせい。
741739:02/07/21 21:46
即レスありがとうございます。

ActiveWindow.ScrollRow = 1
Selection.AutoFilter Field:=8, Criteria1:="<=1,000", Operator:=xlAnd
End Sub

たったこれだけなのですが・・・。
それと、このマクロ処理したものは、別にファイルを作って
その中にコマンドボタンを作って入れることも可能ですか?

>741

Sub aaa()
 Sheet1.UsedRange.AutoFilter Field:=8, _
     Criteria1:="<=1,000", Operator:=xlAnd
End Sub

> それと、このマクロ処理したものは、別にファイルを作って
> その中にコマンドボタンを作って入れることも可能ですか?

もっと修行を積んでからならね。
743739:02/07/21 22:02
>>742

どうもありがとうございました!
修行に逝ってきます。
744736:02/07/21 23:33
>>737
レスありがとうございました。

実は仕事でレポート書くときに、ExcelかWordで作らなきゃいけなくて、
表とか多く使うときはExcel使うんですけど、ページ数はいつも一つ一つ
シコシコ打ち込んでます。
フッターの表示はまとめてできるのですが、並んでいるシートの順に
連番を付けるのはどうやったらいいものかわからなくて…
自動だと、全部1ページになっちゃうんですよね。
あとから途中にページ挿入したときなんかはその後全部手入力で訂正…

なんかいい方法は無いものでしょうか?
745名無しさん@そうだ選挙にいこう:02/07/21 23:43
>>744
だから、737のやり方でフッターに通し番号のページ数が入るじゃん。
一回試してみそ。
746名無しさん@そうだ選挙にいこう:02/07/22 00:19
747736:02/07/22 01:42
どうもすみません。
何度かやってみたのですが、やっぱり全部1ページになってしまうだけです。

全sheetタブをctrl押しながらクリックして全て選択し、
ページ設定→ページ→先頭ページ番号「自動」or「1」or先頭ページのみ「1」で残りは「自動」
ページ設定→ヘッター/フッター→フッターの編集→中央部に&[ページ番号]

でやってみたんですけれども、全て1ページになってしまいました。
「自動」以外にコメントでの命令でもできるのでしょうか?
根本的にやり方が間違っているのでしょうか?

すみません、いつもこいつで手間ばかりかかってしまっているので
申し訳ありませんが、教えて頂けないでしょうか?
748名無しさん@そうだ選挙にいこう:02/07/22 06:54
>>747(736さん)
シートを複数選択して、(設定するのではなく)印刷する。
749737:02/07/22 21:15
>747

複数シートを選択して、印刷プレビューを見たことないのか?
次のページを押すとか、スクロールさせるとか、そんな発想は微塵もない?
750736:02/07/22 23:22
>>748-749
すみません、やっとわかりました。
最終的にページ数を固定することはできないようですが、
ブック全体の同時プリントやページごとでのプリントもできるようなので、
特に問題なさそうです。

明日数ページのレポート作る予定ですので早速この方法で印刷してみます。

長々とつき合っていただき、ありがとうございました。
>>750

> 最終的にページ数を固定することはできないようですが、

表示−改ページプレビューとか、ページ設定の 縦○枚×横○枚とかで、
各シートの印刷枚数を設定すれば良いのでは?
752736:02/07/23 01:01
>>751
どうもすみません。書き方が悪かったようです。
つまりsheet全選択してプレビューを見るとsheetの順番通りにページ数が
フッタに書き込めているけど、それを一端解除してsheet単位でプレビューを
見たら、また元に戻っちゃってたって事です。

でもそこまで不自由ではなさそうなので、まあいいかな?と思ってます。
どうもありがとうございました。
753名無しさん@そうだ選挙にいこう:02/07/23 08:08
だって、フッターというもの自体が、その時まで確定しないものだろ?
総ページ数しかり、日時しかり。
754名無しさん@そうだ選挙にいこう:02/07/23 16:11
A1〜A10の平均をとるときは、AVERAGE(A1:A10)としますよね。
で、A1〜A10の値にゼロがあれば(計算式の結果で)計算の対象外にしたいのですが、どうすれば良いのでしょうか。

ちなみにバージョンは2000です
755名無しさん@そうだ選挙にいこう:02/07/23 16:25
>754
AVERAGE使わずに、SUMとCOUNTAとCOUNTIFで計算すればいいじゃん。
756755:02/07/23 16:29
親切に書くとこう。
=SUM(セル範囲)/(COUNTA(セル範囲)-COUNTIF(セル範囲,0))
757名無しさん@そうだ選挙にいこう:02/07/23 16:34
これじゃだめ?
=SUM(A1:A10)/COUNTIF(A1:A10,">0")
758名無しさん@そうだ選挙にいこう:02/07/23 19:30
たとえば
http://www2.odn.ne.jp/excel/waza/function.html#SEC13
のような条件を2つ完全に満たすというのは関数でカウントできますか?
この例のB1:B5に"東京"とか"大阪"とか入っていて
東京が晴れとか大阪が曇りというような条件を満たす
件数を個別にカウントしたいんです。
ご教授お願いします。
759名無しさん@そうだ選挙にいこう:02/07/23 20:10
function の答えを書式指定して返すことは可能ですか?

具体的には
functionの答えを 5桁表示させたいのです。
例 87 -> 00087

(無論、そのfunctionを書いた領域を毎回、書式設定すればよいのですが・・・)

イメージ的には、下記のようなことをしたいです。


Function test_func(num)

test_func = num + 1

'イメージ
'test_func.NumberFormatLocal = "00000"

End Function

どなたか、お願いします
みなさんおはようございます。

エクセルで出納帳をつけています、それ自体は足し算と引き算で
子供でも作れる物なのですが、最近入ってきた若造が手直ししたようで、
ブックを開くといつでも○○出納帳って書いた表紙みたいなシートが開きます。
私が作った時は、最後に閉じた状態のシートで開いたのですけど??

どこにどういう仕掛をしたのかわかりません、ちなみに若造は生意気で
教えてくれません。お願いします、誰か教えて下さい。
>>759
test_func = Format(num + 1, "00000")
これでどう?
762ワカコ:02/07/24 11:14
>760
ツール->マクロ->VBE
Thisworkbook 辺りになんか書いてるわよ。
ワカゾーに「クビにすんぞ ゴルァ!」って
声掛けた方が早いと思いまーす。
763SUMIF:02/07/24 14:18
突然ですが、質問です。
SUMIF関数ですが、その検索条件をセルが入力時、ようは未入力以外としたいのですが。
親切な方、お願いします。
764適当:02/07/24 15:17
ただのSUM関数じゃダメなの?
765SUMIF:02/07/24 15:32
A列  B列
項目1 10
項目2 20
30
項目3 30
項目4 40
70
合計  100 ←を自動計算したいのです。

766SUMIF:02/07/24 15:34
A列  B列
項目1 10
項目2 20
30
項目3 30
項目4 40
70
合計 100 ←を自動計算したいのです。
767SUMIF:02/07/24 15:35
ぐはっ!やはりズレる。30,70はB列です。
>>760
これのやり方、俺も知りたい!
769名無しさん@そうだ選挙にいこう:02/07/24 17:14
>760
ThisworkbookのThisworkbook_Openか標準ModuleのAuto_Openあたりに
表紙のシートをアクティブにするコマンドが入れてあるんでしょうね。
BeforeSaveかもしれないけど。

ThisWorkbook.Worksheets("表紙").Activate みたいな。
770名無しさん@そうだ選挙にいこう:02/07/24 19:19
教えて下さい。
Macのエクセル(オフィス2001)です。

タイトルバーをオプションクリックして(ウインだとシート名のタブ右クリック?)
コードの表示というのを出してしまってから、
そのファイルを起動する度にマクロ有効化する?の画面が表示されます。

コードを見ると、sheet1(2も3も)には
「Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)

End Sub」
となっていて、
thisworkbookには
「Private Sub Workbook_Open()

End Sub」
となっています。

構文をDeleteで消してもすぐに復活してしまい、なおりません。

一度、右クリックやオプションクリックでコード表示を出してしまうと、
ずっとマクロ警告が出るのですか?

新規書類でも同じことやると必ず次に開く時にマクロ警告でてきます。
構文も消せません。

構文消せないでしょうか?
771名無しさん@そうだ選挙にいこう:02/07/24 21:13
すいません教えてください。
たとえば1ページ10個の列の一行目のセルにそれぞれオートフィルで連番を振っていきますよね
で印刷する時2ページ目からは11〜20、3ページめは21〜30と自動的に番号を変えて欲しいのです
(分かり難かったらごめんなさい。番号つきの整理券みたいな物をいっぱい作りたいのです)
可能でしょうか?
772名無しさん@そうだ選挙にいこう:02/07/24 21:41
>>770
Winで消せるものはMacでも消せると思うんですけど。

タブのところで右クリックということは「イベント表示をしる!」
っていってるようなものなので、イベントがないと新たに追加されます。
DELでイベントコードを消した後の確認は、
 ツール - マクロ - VBE(マックでも似たようなコマンドがあるはず)
で表示して確認するか、一旦保存して消せているか確認したらいいのでは?
773名無しさん@そうだ選挙にいこう:02/07/24 23:12
会社のマシンのExcelが突然起動しなくなってしまった。
Wordやその他のソフトは起動するのにExcelだけは起動途中で
フリーズしてしまいます。OfficeやWindowsをインストール
し直しても直りません。
誰かこんな経験した人っていませんか?
ちなみに、環境はMeでOffice2000を使用。
774名無しさん@そうだ選挙にいこう:02/07/25 00:28
>>759です

>>761さんありがとうございました。
望みの動作が実現できました。
>>774

文字列でよかったのか。。
776名無しさん@そうだ選挙にいこう:02/07/25 00:57
>>775さん

ん?
一応数字のつもりですけど・・・
戻り値も計算に使えますし・・・

なんか、また
僕には理解できないところの話なんでしょうか?
>>763
=sumif(a1:a6,"",b1:b6)
ではだめなの?
778名無しさん@そうだ選挙にいこう:02/07/25 12:49
2000使ってます。
プレビューと実際の印刷が違うのは何とかならないでしょう?
特にセルの中に入れた文字が切れてしまう。
上下の幅が取られていないこともあれば、
右側の文字が切れてしまうことも。

779名無しさん@そうだ選挙にいこう:02/07/25 14:31
メール便の表があり、それぞれ170円、150円の種類があります。
送り先は全国の会社。部数がそれぞれ違うので、170円は何部、合計
いくらになるか関数でだしたいのですが、教えてください。
780名無しさん@そうだ選挙にいこう:02/07/25 15:23
何をしたいのか。
表に書いてある部数に150か170を掛けてから足せば
関数など使わなくても合計金額になると思うが。
781SUMIF:02/07/25 16:35
>>777
サンクス、君はボクのラッキーナンバーだ!
てか自分のバカさ加減に・・・・・・オレって奴は、オレって奴は、頭ガンガンガン!
では、セルの入力未入力のチェックの仕方を教えて下されー。
IFでの判定方法で、また親切な方お願いします。
782名無しさん@そうだ選挙にいこう:02/07/25 16:46
>781
説明もうまく出来ねぇバカボンズが
また何か聞きてぇのか?

今度もどんな答えが必要なのか
書いてねぇしよ
783名無しさん@そうだ選挙にいこう:02/07/25 16:59
A社@170円(2部ずつ6箇所送付)
B社@150円(4部ずつ2箇所送付)
C社@170円(5部ずつ4箇所送付)
D社@190円(6部ずつ3箇所送付)・・・という表があったとする。
@170円×○○部数=いくらか?というメール便の単価ごとに合計金額を
出したい。表は順番を変える事ができないので、表の中でとびとびに
170円があったり、150円があったりする。
表のなかから170円の会社の部数だけ参照して、合計を出したい。
1コ1コ170円の部数のセルを足し算するより、毎回変更するので、
関数で、170円の部数を自動的に参照するようにしたい。
・・・・説明わかりますか?どなたか教えてください。
784名無しさん@そうだ選挙にいこう:02/07/25 17:21
>>783
ヘルプでSUMIFを読め。
785SUMIF改めバカボンズ:02/07/25 17:37
>>782
ようは、セルの入力チェックをしたいのです。
対象とするセルが、
何か入力されているのか、
全く何も入力されていないのかの、
判定です。
<> ""で判定しようにも、何やらゼロ?と未入力セルが判定されてしまうので。

以上、よろしくお願いします。
786名無しさん@そうだ選挙にいこう:02/07/25 18:14
>>785
??? 例えば、セルb1に以下の式
=if(a1="","未","済")
を入れると、a1に何も入力されなくても
b1に"済"って表示されること???
俺が読解力ないのかな???
787名無しさん@そうだ選挙にいこう:02/07/25 18:22
>>783-784
A社170円の単価の数を知りたいんならcountifじゃないのか?
合計なら、sumifだけど。

788名無しさん@そうだ選挙にいこう:02/07/25 18:26
>>785
0が判定されるわけないだろ?

いずれにしても純粋にA1が空白かどうかを判定するなら
=IF(ISBLANK(A1),"空白だゴルア!","入力済みだゴルア!")
789エクセルフォン:02/07/25 23:39
なるほど。
trueを返すシート関数はそのように利用するのか。
今までよくわからなかった。
これでまた社内評価が向上するな。フフフ。
会社の程度が知れるな。
791エクセルフォン:02/07/26 00:21
フフフ。まぁな。
わが社は職員500人ほどの某役所なのだが
今春新採の俺でもエクセルに関してはトップレベル。
驚くほど電算操作技術が低いのだ。
将来への人材育成に投資してこなかった愚かな役所だよ。
組合が強すぎて、対応できない中高年保護のため
電算化に抵抗しているんだな。
792名無しさん@そうだ選挙にいこう:02/07/26 01:04
>791
知らねぇ 気持ち悪い奴だな
おいバカボンズどこだ?
貴様が答えないから
真性包茎入って来たぞ
793名無しさん@そうだ選挙にいこう:02/07/26 08:42
OS2000;Exell2000
テキスト、タブ区切り、512列1024行のデータを読み込む方法って無いでしょうか?
txt段階で256列にデータを切るぐらいしか思いつかず、できることなら
Exellでしょりをしたいのですが・・・
過去ログや、その他調べてみると限界を超えることはできない等のレスがあり
無理なのかと思いつつもなんとかならないでしょうか?
794バカボンズ:02/07/26 11:24
>>766
の方法というのが、
>>777
以外でやるとすれば、
=IF(ISBLANK(A1),,B1)
+IF(ISBLANK(A2),,B2)
+IF(ISBLANK(A3),,B3)
+IF(ISBLANK(A4),,B4)
+IF(ISBLANK(A5),,B5)
+IF(ISBLANK(A6),,B6)
となる訳ですが、
これらをさらにSUMIF使ってやりたい訳です。
=SUMIF(A1:A6,?????,B1:A6)
の?の部分にはTRUEしか使えないのでしょうか?

関係無いですが、真性包茎は逆に貴重。
女で言うなら、太ってるのに貧乳なぐらいに。
795名無しさん@そうだ選挙にいこう:02/07/26 12:02
A列 B列 A列 <-C1
項目1 10 項目1 <-C2
項目2 20 項目2 <-C3
30 項目3 <-C4
項目3 30 項目4 <-C5
項目4 40
70
合計 100 <----"=DSUM(A1:B7,2,C1:C5)"
余分な事書く事になるけどぅ
>>794
>777の方法以外でやるなら、配列関数が手っ取り早いと思われ
=SUM(IF(ISBLANK(A1:A6),0,B1:B6))
を入力した後、ctrl+shift+enter。

797796:02/07/26 13:05
>>794
補足。ツール→オプション→条件付合計式ウィザードの
ほうが簡単かも。

>>793
無理だと思う。テキストの段階でわけれ。


798770:02/07/26 14:16
>>772 さん

ありがとうございます。遅くなりすみません。
やっぱり消せません。

コード表示のウインドウの左上に
(General)とWorksheet(あるいはWorkbook)を選ぶポップアップがついてまして、
コードはWorksheet(あるいはWorkbook)の方に書いてあります。

それをdeleteで消すと消えたのかと思うと
ポップアップが(General)に変っていて、
Worksheet(あるいはWorkbook)を再び選ぶと消したつもりの構文が
消えていません。

この消し方がおかしいのでしょうか?
799名無しさん@そうだ選挙にいこう:02/07/26 18:06
EXCELに画像ファイルを貼り付ける際の質問です。

画像の背面にあるセルが表示(及び印刷)されるように貼り付
けたいのですが、どのようにしたらよいのでしょうか?

氏名が入力されているセル上に印鑑のような体裁で貼り付け
たいのですが。

画像を作る際に設定するのか、EXCELに貼り付け後設定する
のかさえわかりません。

よろしくおながいします。

800772ではないが:02/07/26 18:12
>798
Macはサパーリわからんが、xlstartフォルダに変なファイル(book1.xlsとかsheet1.clsとか)が入っていると思われ・・・
入ってたらとりあえず消せ。

>それをdeleteで消すと消えたのかと思うと
>ポップアップが(General)に変っていて、
>Worksheet(あるいはWorkbook)を再び選ぶと消したつもりの構文が
>消えていません。

消した後になぜいじる?

801名無しさん@そうだ選挙にいこう:02/07/26 18:35
>>758
方法があったら俺も知りたいが、Excel上ではたぶん無理
VBA使う方法しか思いつかんが・・・

>>771
VBAを使うしかないと思う・・・
Sub sub1()
Dim i, j As Integer
For j = 0 To 9
For i = 1 To 10
Sheet1.Cells(1, i) = i + j * 10
Next i
sheet1.printout
Next j
End Sub
802770:02/07/26 19:02
>>800 さん

OfficeのフォルダにStartupというフォルダがあって、
その中にExcelとPowerPointとWordというフォルダがありますが
何にも入ってません。

>>それをdeleteで消すと消えたのかと思うと
>>ポップアップが(General)に変っていて、
>>Worksheet(あるいはWorkbook)を再び選ぶと消したつもりの構文が
>>消えていません。

>消した後になぜいじる?

何度も消してすぐ保存終了しましたが、
そのファイルを起動する度にマクロ有効化する?ときいてくるので
ちゃんと消えてるのか確認するために
消すと勝手にWorksheet(あるいはWorkbook)からGeneralに変るポップアップを
Worksheet(あるいはWorkbook)にして見てみただけですが。
それが原因なんでしょうか???
803800:02/07/26 20:29
>>802
いや、雑な書き方をしてしまったようだスマン。
Macは知らんがWinの場合、XLstartフォルダはExcel.exeがある近くのフォルダにはない。
したがって、XLstartフォルダは「ファイル・フォルダの検索」で探しだしたほうが早いと思う。
(HelpでXLstartで検索すると格納フォルダや説明も出てきたような気がするが、わかりずらい。)
当然のことながら、当て推量で書いているのでこれが解決方法かどうかは保証できんが・・・
(つーか、書いてて原因これじゃない気がしてきた・・・)

最悪、ツール→マクロ→セキュリティでセキュリティのレベルを低にするとメッセージは
出なくなるが、根本的な解決でないのでお勧めできない。

>消すと勝手にWorksheet(あるいはWorkbook)からGeneralに変るポップアップを
>Worksheet(あるいはWorkbook)にして見てみただけですが。
>それが原因なんでしょうか???

そのとおり。


って、あいからわず駄文だな、俺。



804770:02/07/26 21:35
>>803 さん

解決いたしました。どうもありがとうございました。

XLstartフォルダやそれに入ってるであろう変なファイルは
いろんな検索方法で試しましたが結局出てきませんでした。

>>消すと勝手にWorksheet(あるいはWorkbook)からGeneralに変るポップアップを
>>Worksheet(あるいはWorkbook)にして見てみただけですが。
>>それが原因なんでしょうか???

>そのとおり。

これが原因でした。
件のbookには20近くシートがあり、
全てのシートの構文を一度の起動では消さなかったからのようです。
そのbookを起動して(開けて)20のシートの構文とbookの構文の
あわせて21個を消しては閉じを繰り返して、保存して終了したら、
次の起動で(開けた時に)マクロ有効化する?ときかれなくなりました。

新規ファイルでも再現してみましたら、やはり全部、同じ起動時に消せば、
マクロ有効化する?ときかれなくなりました。

「セキュリティのレベルを低にする」(Macでは警告を出なくする)には
したくはなかったので、良かったです。ありがとうございました。
805名無しさん@そうだ選挙にいこう:02/07/26 21:47
すみません!エクセル超初心者ですが一つ教えて下さい。
セルの欄にハイフンを入れた数値(例えば28−03)を入力すると
なぜか3月28日と表示されるのです。

どうすればセルの欄に28−03と表示されるのでしょうか?
くだらなくてすみませんが教えて下さい!
806名無しさん@そうだ選挙にいこう:02/07/26 22:00
方法その一:入力する時「'28-03」とアポストロフィ(')をつける。
方法そのニ:該当するセルの書式設定で表示形式で「文字列」を選択する。

665と712に類似質問があります。ご参考に。
807エクセル超初心者:02/07/26 22:03
806さん 参考になりました!ありがとうございます。
A列に1から25までのランダムな数字が入力されているのですが、
VBAでB列にA列の数字に合わせた任意の文字列を入力したいのです。

B1以降に直接VLOOKUPを打ち込めば簡単なのですが、ワークシートに
関数は入力しないようにしたく。

For Nextステートメントを使うのでしょうか?よくわからなかった
ので教えてください。
809帰ってきたけど酔ってます(800):02/07/27 02:10
>>808
意味が今ひとつわからんが、つーか酔ってるんでわけわからんが、Vlookup関数はVBAでも使えますが何か?
(例:worksheetfunctuin.vlookup(以下、略)

>For Nextステートメントを使うのでしょうか?よくわからなかった
>ので教えてください。
つーか、for nextは繰り返す量が決まってる時、きまってない時はdo-loopを使うんじゃ・・・ま、俺は知らんが・・・・・・・

俺の個人的なよった感想なんで適当に流してくれ・・・
気が向いたら明日ちゃんと見るよ。


見るわけないだろ(w




810800:02/07/27 02:15
つーか、折れマジで酔ってるよ・・・
自分で書いた809の文書見てワケワカランし・・・
とりあえず、do-loopは、do whole-loopの間違い・・・
つーか、スレ汚しスマン。寝るわ・・・
811808:02/07/27 02:41
解決しました。スマソ。
812376ですが:02/07/27 13:28
wordで可能な囲み文字をExcelでも活用したいのですが
どうしたらよいのでしょうか?
A〜Zまでのアルファベットを○で囲みたいのですが、
どなたがお教えください、よろしくお願いします
813名無しさん@そうだ選挙にいこう:02/07/27 15:29
>812
活用したきゃWordで書いて
Excelに貼るじゃダメ?
セルに入れようとしてるの?
814v:02/07/27 15:34
815名無しさん@そうだ選挙にいこう:02/07/27 19:41
>>812
外字登録すれ
>>812
代替案だけど、オートシェイプつかったら?
例えば、テキストボックスとオートシェイプで作ってグループ化、
予めパーツとして全部作っておいて、必要なときに切り貼り。
817初心:02/07/28 22:50
教えてください。

"シートの保護"をすると、ロックを掛けたセルを文字入力不能にしたり、
セルの大きさ(行、列)の変更を不可能にしたり、することができるじゃないですか。
それをブック全体一括でしたいんですが、そういうことはできますか?
"ブックの保護"をしても、ロックを掛けたセルに文字入力ができたり、
セルの大きさを変えれたりするんですよ。
僕の"ブックの保護"の使い方がおかしいんですかね・・・。
818ネ刀心:02/07/28 23:24
すでに存在するexcelファイルを、コマンドプロンプトから
CSVに変換するにはどうすればよいでしょうか?

環境の都合上ほかのソフトウェア(フリーソフトとか)は
導入できないのですが。

c:\temp> hoge abc.xls > abc.csv

みたいな感じで。。
Q.セルに入力した値が勝手に変わってしまうのですが
(先頭のゼロが消えてしまう、日付として解釈されてしまう)
 入力したままの形で表示させるにはどうしたらいいですか?
A.入力する時、先頭にアポストロフィ(')をつけるか、
 該当するセルで右クリック〜「セルの書式設定」〜「表示形式」で「文字列」を選択。

いい加減FAQだな。
次のスレでテンプレートに入れたら?。
>>817
俺もやってみたら、作業グループで保護できるのは"ブックの保護"のみで
"シートの保護"はできんかった。とりあえず、VBAで
Sub test()
 Dim sht as object
 For Each sht In Worksheets
  sht.Protect
 Next sht
End Sub
と組むしかないのかなぁ? 
ちなみに、シートの保護の解除は上のプロシージャ内の
Protect→UnProtectとすればよい
>>817
ネットは広いけど、狭い世界です。
回答を得たい気持ちは解りますが、親切で一生懸命の人は何処にでもいるものです。
マルチポストはやめましょうね。
でも最初の場で解決できなくて、他の場所ならもしかして…ということもあるでしょう。
そういう時はその旨を書くなり、一定時間時間を置く(待つ)なりしましょう。
822名無しさん@そうだ選挙にいこう:02/07/29 23:27
わからなくて困っています。どなたか教えてください。

セルA1に1、B1に2、C1に3、と値が入力してあり、D1に1-2-3と表示させていのですが・・。
D1に表示させる値を○<○<○と表示させたいんです。説明不足かと思いますが宜しくお願いします。
823名無しさん@そうだ選挙にいこう:02/07/29 23:41
>822
漏れは未熟だから、下の方法しか思いつかないなぁ
データが3こならこれでいいんだが・・・

引数リストのN番目の値を返す関数とかってありますかねぇ?
別に、今必要なわけじゃないけど・・・


D1に
=MIN(A1:C1)&"-"&MEDIAN(A1:C1)&"-"&MAX(A1:C1)
824名無しさん@そうだ選挙にいこう:02/07/29 23:48
>>823 自己レス
LARGE()
SMALL()
を発見 お騒がせしました
825ななし:02/07/30 01:12
お願いします。質問です。
50m走のタイムをデータベース化したいのですが、
6秒5のように、秒より小さい単位の入力と表示ってどのように
やるのでしょうか?
826名無しさん@そうだ選挙にいこう:02/07/30 09:50
>>825
現実問題として、50m走くらいのタイムだったら
小数点以下1〜2桁程度の数値で事足りないかな。
表示形式の設定で小数点のところを「秒」とか書かせれば?
827名無しさん@そうだ選挙にいこう:02/07/30 10:43
6秒5
をやめて、
6.5秒
にすれば。
828名無しさん@そうだ選挙にいこう:02/07/30 18:57
禿しくガイシュツだったり有名なバグだったらごめんなさい。
Office2000 SR-1 PersonalのExcel使用で、例えば以下の計算をする
と・・・・

 1,100,000 - 1,090,000.4 = 9,999.60000000009000
1,100,000 - 1,090,000.6 = 9,999.39999999990000
1,000,000 - 990,000.4 = 9,999.59999999998000

などどなるのですがいかがなものなんでしょうか。
829828:02/07/30 18:59
↑ちなみに基本環境は。Pen4/1.6 + WindowsXP Proです。
>>828
AthlonXP + Win2k + Excel2002でも再現した。
小数点以下の桁数が10桁を超えると発生するみたい。
HELPに書いてある Excelの仕様および制限にある
「計算の仕様」内の筈だけどね。
831828:02/07/30 19:29
>830
やっぱりですか・・・
小数点以下が.0もしくは.5では発生しないみたいなんです。また計算
の元になる値の桁数や引く値と引かれる値の差の大きさなども関係
するみたいで、発生の要件はまでは追求してないんですが。
今進行中の作業に直接の被害はないんですが、結構なデータのケツ
合わせに血眼になってるときに0.0000000001なんて差が出てきてひっ
くり返りそうになったです。バグだとしたら(としか考えられんが)
ワークシートとしては致命的な問題じゃないですか?
>>828-831
お前ら浮動小数点数のしくみも知らんのか
このへん嫁
http://www.microsoft.com/JAPAN/support/kb/articles/JP161/2/34.asp
833名無しさん@そうだ選挙にいこう:02/07/30 20:51
Excelで式は見られないけど値だけユーザーに見せる方法がある
らしいのですが、どのようにすれば良いのでしょうか?
834キングクリムゾン:02/07/30 20:55
セルの書式設定>保護>
「表示しない」にチェック

その後
ツール>保護>シートの保護>パスワードの設定
で数式バーがマシーロになる。
セルには結果だけが表示される。
結果だけが残る。
835名無しさん@そうだ選挙にいこう:02/07/30 21:05
>>834
ありがとうございます。
それってどう頑張っても式は見られませんよね?
ネット上にそういうツールが転がってたら哀しい。
836名無しさん@そうだ選挙にいこう:02/07/30 21:06
>>828-831
表示桁数で計算、にしてはいけない理由があるの?
あるいは、18桁以上の精度が必要なの?

一般論として、Excelは内部で記憶している数値を、表示形式に合わせて表示しているわけだけど、
なまじ親切に自動的に表示形式を設定してくれるために、
日付になっちゃったとか、分かりにくい現象が起こることがある。
837名無しさん@そうだ選挙にいこう:02/07/30 21:22
教えて君で申し訳ないのですが、マクロ初めてでして知恵を拝借願います。

A1のセルの値が”申し出”になったらマクロを停止、
変化が無かったら"A"と言う別のマクロを実施して”申し出”になるまで繰り返す。
と言うマクロを作ろうと思っています。

しかし、とっかかりから分からなくて四苦八苦しています。
実はもっと色々とやりたいのですが、全部甘えると皆様に迷惑でしょうから
せめてこれだけでも教えていただけないでしょうか?
ヒントだけでも結構です。
どうかよろしくお願いします。
838名無しさん@そうだ選挙にいこう:02/07/30 22:33
do until a=1
if range("a1")="申し出"
  a=1
elseif
  別のマクロ
  a=0
endif
loop

839わてもVBA初心者:02/07/30 22:37
>>837
Sub test()
While Range("A1") <> "申し出"
  A
Wend
End Sub

とりあえず、ヘルプで「分岐」か「ループ」辺りを見るとイイと思います。
お互い頑張りましょう。。。
840名無しさん@そうだ選挙にいこう:02/07/30 23:42
ショートカットキーを設定し忘れたマクロに、ショートカットキーを追加する方法はどうすればいいの?
>>840
事故レス。
見つかった。ごめん。
838,839様
ありがとうございました。
これをベースにして色々と機能を追加していきます。
>>840
いいのですか? だろ。
844 :02/07/31 20:13
すみません。XPを使用しています。
SUMIF関数の”検索条件”をフォントの色にしたいのですが。。。
確かできたと思うのですがご存知の方おしえてくらさい。
845名無しさん@そうだ選挙にいこう:02/07/31 21:09
Excel95か97で作成したファイルを
Excel2000で編集して、そのまま保存して
95か97でまた開くと見れるんでしょうか?
どこかに不都合が出ますか?
846名無しさん@そうだ選挙にいこう:02/07/31 21:38
>845
そのレベルの質問する人にとっては
普通に保存してまず問題なく95,97で開ける。
心配なら
名前を付けて保存>ファイルの種類
で95対応形式で保存汁!
847名無しさん@そうだ選挙にいこう:02/07/31 21:53
保存しようとすると、2000のはすんなり行き、
Excel 5.0/95ブックで保存しようとすると、互換性のない機能が
含まれている可能性があると出ました。
Excel 97-2000および5.0/95ブックで保存すると何も出ませんでした。

明日私は古いパソコンで上のどのファイルを開けばよいのでしょうか。
848名無しさん@そうだ選挙にいこう:02/07/31 22:41
互換性のない機能ってどんなの?

とりあえずExcel 97-2000および5.0/95ブック
なら間違いないっぽい
849名無しさん@そうだ選挙にいこう:02/07/31 23:21
お恥ずかしながら、B列に入っている☆の数をCOUNTIFを使ってみましたが、
どうにも上手くいきません。
ヘルプも見てみたのですが、答えは0になってしまいます。
どうすれば良いのでしょうか?
850名無しさん@そうだ選挙にいこう:02/07/31 23:27
>>849
=COUNTIF(B:B,"☆")
851名無しさん@そうだ選挙にいこう:02/07/31 23:31
>>850
やっぱりそれで良いんですよね?
何がいけなかったんだろう・・・明日早速見てみます。
ありがとうございました。
>>851
"☆"と"☆ "は同じじゃないけど、それは分かっている?
(後者は☆+半角スペース)
853名無しさん@そうだ選挙にいこう:02/07/31 23:52
>>852
実際にやる時は、半角スペースは入れなくて良いんですよね?
854850:02/08/01 00:31
852じゃないんだけど…
>実際にやる時は、半角スペースは入れなくて良いんですよね?
入れなくていいよ。
とりあえず、850の式をフロッピーにでも落として、明日はそれをコピペしてみれば
間違いないんじゃない?

それと、もしもあなたのシートのセルの入っている☆の前後に
何かが付いているのだったら、カウントされないよ。(たとえスペースでも)
前後に何かが付いているのも含めてカウントさせたいなら、
=COUNTIF(B:B,"*☆*")
>>848
どうもありがとうございます。
明日ちゃんと開けますように。
856名無しさん@そうだ選挙にいこう:02/08/01 14:28
UserFormにコンボボックスを20個作りました。
以下の命令なんですが

Private Sub UserForm_Activate()

 UserForm1.ComboBox1.RowSource = "a1 : a10"
 UserForm1.ComboBox2.RowSource = "a1 : a10"
 UserForm1.ComboBox3.RowSource = "a1 : a10"
 :
 UserForm1.ComboBox20.RowSource = "a1 : a10"

End Sub

もっと簡単に記述する方法を教えて下さい。
例えば UserForm1.ComboBox(1:20).RowSource = "a1 : a10"
みたいに記述するって事なのですが・・・
よろしくお願い致します。
Private Sub UserForm_Activate()
 For I = 1 to 20  
  Me.Controls("ComboBox" & I).RowSource = "a1 : a10"
 Next
End Sub

でどう?
858名無しさん@そうだ選挙にいこう:02/08/01 15:59
857さん
ありがとう
859名無しさん@そうだ選挙にいこう:02/08/02 00:58
初心者です
Excelで
AAAAをAaaaに一括変換できる技ってどうするのですか?
下らない質問ですがよろしくお願いします
860Word20000:02/08/02 12:00
>>859
properという関数があるよ。
スキャナで取り込んだ書類を
そのままエクセルで展開して
編集することは可能でしょうか?
(取り込んだものをテンプレートに
できるか?という意味です)
お願いします
862アラウンド:02/08/02 13:58
 普通なら表示されるはずのグラフツールバーが、表示されません。
一応、表示→ツール→グラフを確認しましたが、既にチェックは入ってます。
もう1台のノートPCにそのデータを複写したら、表示はされるのですが、
それゆえに僕のPCのエクセルがいかれてしまったのか、と心配です。
いい方法があれば教えてください、お願いします。 m(__)m
>>862
とりあえずこれを実行してみ
Application.CommandBars("Chart").Position = msoBarTop
だめならレス汁
864アラウンド:02/08/02 15:13
863さん、早速のレスは嬉しいのですが、残念ながら、僕には
そのコマンドをどこにどうすればいいのか、わかりません (;_;)
 MSDOSプロンプトでうちこむとかでしょうか? 汗
>>864
(゚Д゚)ハァ?
マクロに決まってんだろが
866名無しさん@そうだ選挙にいこう:02/08/02 15:39
>>862

ツールのユーザーなんたらを開いて、コマンドタブを
クリックしたところからグラフツールのアイコンを
探し出してきて、メニューバーの下にドラッグしたりして
できないでしょうか?
867アラウンド:02/08/02 15:59
 マクロが理解できていれば、苦労はしないのですが・・
マクロ登録の基礎から勉強する必要があるようですね、
今HPを探し中です。。
>>867
しゃーねーな
手順どおりやれや

1. Excel を起動
2. Alt + F11
3. (VBE 画面で) F7
4. (コードウィンドウで) 次の三行のコードをコピペ
Sub test()
Application.CommandBars("Chart").Position = msoBarTop
End Sub
5. F5
869アラウンド:02/08/02 16:43
866さん、試してみましたが、そのものずばりというグラフツールアイコン
が見当たらなく、一応グラフ作成のとこにあったアイコンを全部試しましたが
だめでした。アドバイス感謝します、ありがとうございました。
868さん、やってみました。4ですが、上のgeneralとかはいじらないんで
いいんですね、左側の全体項目別もまったくいじらないでただコピペして
みたのですが、行をずらさないとF5おしても反応しなかったのでずらして
実行。 ですが、変わりませんでした。僕のやり方がまずいかもしれないけど
丁寧に手順書いてもらったのに申し訳ないです。でもありがとう。
870名無しさん@そうだ選挙にいこう:02/08/02 17:21
全角のアルファベットを半角に置換するマクロをつくりたいのですが、

Cells.Select
Selection.Replace What:="A", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False

これをAからZまで作るしかないんでしょうか。
>>869
>そのものずばりというグラフツールアイコンが見当たらなく
もしかして、「グラフウイザード」のことだろうか?
だとしたら、ツール−ユーザー設定−コマンド−「挿入」の中にありますよ。
見てみてください。あってたら、ツールバーの好みの場所までドラッグ。
はずしてたら、スマソ。
>>870
Sub TEST()
For i = 1 To 10
 For j = 1 To 10
   Cells(i, j) = Application.Asc(Cells(i, j))
 Next j
Next i
End Sub

とりあえず、ワークシート関数を使った方法。
VBA関数でも出来たはず…が、思い出せず。
i、jは適当に変えるか、対象を別なやり方で指定しれ。
>>870
StrConvを使う方法

Sub cmdStrConv()
 Dim myRange As Range
 For Each myRange In Selection
  myRange = StrConv(myRange, vbNarrow)
 Next myRange
End Sub
874アラウンド:02/08/02 20:53
>871 グラフウィザードアイコンはでています。
グラフツールバーがでないので困ってるのですが、
再インストールでだめならあきらめるしかなさそうです。
>>874
「*.xlb」で検索して、ヒットしたファイル(Excel2000なら、Excel.xlb)を削除しろ。
そしたら初期状態には戻ると思うが
876872:02/08/02 21:08
>>873 ソウ、 StrConv ソレダ!! スッキリシタ。サンクスコ。
877sai:02/08/02 21:26
始めまして。なんか最近面白いサイトが出来たみたいですよ。
掲示板とチャットルームがくっついたサイト?!ですかね。
キャラクター(笑)とかがタダで持てたり、着替えさしたり・・・・
でも今だけらしいですよ入会無料なのって!!
詳しくは下記URLをクリックして、確かめて!!

http://www.e-mansion.co.jp/co/ac.html
>>876
STRing CONVert(文字列変換)と覚えておくといいよ。
879アラウンド:02/08/02 21:49
>>874 ありがとうー 
[Excel.xlb]で検索かけてでてきたエクセルファイルを削除したら
グラフツールバーがでてきました。 (*^_^*)
ほんとうにありがとう、いや助かりました。
880アラウンド:02/08/02 21:50
まちがえました>>875 でした。
失礼しました。
881872:02/08/02 21:52
>>878 マタマタ、サンクス。
>>872
ちょっと補足。

XL97以降のワークシート関数は
Application.Asc
ではなくて、
Application.WorksheetFunction.Asc
です。
>>882
2000、2002はどっちでも動くけどね。(97は知らない・・・)
884872:02/08/02 22:23
>>882
はぁ、ついメンドクサクテ省略してしまいます。
支障が出る時ってありますか?
885872:02/08/02 22:24
>>883
97でも動きます。
>883
こういう使いわけをする・・・みたい
http://www.eonet.ne.jp/~3104/006.html
>>884
支障はないけど、省略したら自動メンバ表示されないでしょ?
漏れとしてはこれが一番の支障な気がする・・・。
888872:02/08/02 22:47
>>886
これは何というか・・・使い分けというかバグというか。。。?
いやぁ、奥が深いですね。タメになりました。
>>887
なるほど。実務上(?)の重大な支障ですね。

皆様、ありがとうございました。
889名無しさん@そうだ選挙にいこう:02/08/03 01:17
849です。
>>850-854のとおりで何度もやってるのですが、
「数式のセル参照は計算結果を参照(循環参照)しています」とメッセージが出てしまい、
ヘルプを見ながらあれこれやってみましたが、
結局セル中に青い◆が表示されるようになってしまいました。
850のコピペも、なぜか0になってしまいます。
こんな単純な事なだけに、イライラして仕方がありません。
890モト:02/08/03 01:24
>>861

「すでに入力枠があるような画像」があって、
それに合わせたテンプレートが出来るか?
という意味に取ります。

書類を「シート背景」にする
入力枠にセル幅、高さを合わせる。できれば名前をつけるべきかな。
入力枠のセルのロックを解除する
罫線その他の不要部分の表示チェックをはずす
シートを保護する.....で、一応出来上がり。


ちなみに入力枠はタブで移動します。
(その他のセルについて選択すら出来なければ
すっきりしそうなのだけどその方法は知らない)

カラフルな画像をもとにしてもできるので結構おしゃれにできそう。
サッカーのポジション予想〜!みたいな。

事務的な物ならエクセルの罫線使いながら書くか
ワードでも使いなせぇ。(使いにくいが)
891名無しさん@そうだ選挙にいこう:02/08/03 01:33
>>889

=COUNTIF(B:B,"*☆*")

っていう式をB列の中にいれてるでしょ?
C列とか、とにかくCountifの対象以外のセルに式を書くの。


892名無しさん@そうだ選挙にいこう:02/08/03 01:37
>>889
補足。
☆のカウントってことで同じ列に書きたいのなら
=countif(B1:B25,"*☆*") って式をセルB26に書くとかね。
893889:02/08/03 02:17
>>891-892
どうもありがとうございました。出来ました!!
これでゆっくり眠れそうです。
ところで、☆の前に*を入れるのには、やはり理由があるのでしょうか?
気が向いたらで結構ですので、参考に教えていただけると嬉しいです。
>893
ワイルドカードで検索。
895889:02/08/03 02:28
>>894
早速調べてみました。
良い勉強になりました。ありがとうございました。
896名無しさん@そうだ選挙にいこう:02/08/03 02:34
>>893

単に
☆ だけで入っているのか
つのだ☆ひろ とか
☆にしきの とか
あっ流れ星☆ とか

どういう形で入っているものを数えたいのかわからんから
答える方も一応入れただけでしょ。

前にあるのは「前に何かがついていてもよし」って言う意味だ。
後ろにあるのは「後ろに何かがついていてもよし」って言う意味だ。
前後に何かつけたデータで前後の*をそれぞれはずして試してみれ。

897896:02/08/03 02:37
自己レス

遅かったか。まぁいいや
898名無しさん@そうだ選挙にいこう:02/08/03 20:38
質問です。ワードの質問に近いかもしれないのですが。
エクセルの名簿のファイルを受け取り、ハガキの宛名印刷をするのですが(約350名分)、
どうすれば一括してデータ変換、印刷ができるのかよくわからなくて…
一緒に<<住所>><<名前>>とかがハガキにレイアウトされたワードファイルも
入っていたので、これを使ってどうにかするようなのですが…
都合上もともと持っていた方にやり方を聞くことが不可能なうえ、
調べてようにもどういう項目にあたるのかわからないのでここでお聞きした次第です。
わかる方いらっしゃいましたら回答よろしくお願いします。
>>898

たんなるWordの差し込み印刷
あー、わかりました…ありがとうございます。
ただ、なぜか印刷が黒じゃなく赤で出る…
901898:02/08/03 23:41
うまくいきました。ありがとうございました。
902二つ目のお気に入りとして:02/08/04 06:47
このサイトは世界一リンクの多い総合リンク
サイトを目指しています。しかも総合リンク
サイトとしては日本初のナビゲーションリン
ク機能を搭載して、全てのサイトを右フレー
ムに表示できるようにしてあり、あらゆるサ
イトをさくさく表示することができます。是
非ブックマークに登録して活用してください。

http://home9.highway.ne.jp/cym10262/
903名無しさん@そうだ選挙にいこう:02/08/04 09:05
未だにExcel97を使っています。

A B C
2002/1/2 大阪 1000
2002/2/10 東京 5000
2002/2/17 東京 1000
2002/3/5 大阪 3000
2002/3/12 東京 2000
2002/4/9 大阪 5000

SUMIF(B1:B6,"大阪",C1:C6)で、9000となりますが、
さらに、A列の条件もくわえて、2002/2/1から2002/3/30までの
"大阪"の合計というのは計算するテクニックはないでしょうか?
904名無しさん@そうだ選挙にいこう:02/08/04 09:25
>903

SUMPRODUCT関数を使う場合
=SUMPRODUCT((B1:B6="大阪")*(A1:A6>DATEVALUE("2002/1/31"))*(A1:A6<DATEVALUE("2002/3/31"))*C1:C6)

配列数式を使う場合
=SUM(IF((B1:B6="大阪")*(A1:A6>DATEVALUE("2002/1/31"))*(A1:A6<DATEVALUE("2002/3/31")),C1:C6))
と式を入力(コピペ可)して Shift + Ctrl + Enter で確定

<と>で指定しているので、日付はそれぞれ前後1日。
905名無しさん@そうだ選挙にいこう:02/08/04 13:26
あるセルをクリックしたときにマクロが実行されるようにするには

sub 〜〜〜 ()
の部分をどのように記述したらよいですか?
906名無しさん@そうだ選挙にいこう:02/08/04 16:27
>905
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Beep
MsgBox "AAAAA"
End Sub
907名無しさん@そうだ選挙にいこう:02/08/04 16:34
>>904
ありがとうございます!
実は、同じ機能をLotus123のDSUM関数で実現していまして、
Excelに載せ替えるのに困っておりました。
あとは、OpenOfficeでも使えるか調べてみます。
908(;´Д`):02/08/04 19:01
どなたか教えてください
Lotus123にある/F(ファイル)C(結合)C(複写)N(一部)に
あたる機能はExcelには無いのでしょうか?
いろいろなマニュアル見ても載ってません、知っている方いたら
お願いします。使用しているのはExcel97です
909(;´Д`):02/08/04 19:46
自己解決しますた
ファイル開いて編集コピーじゃ意味ないよExcel!
otukare
911串刺し演算したいんですが…:02/08/04 22:07
環境はExcel2000、できたらExcel97でおねがいします。
一つのシートに6つの表があって、
その1シートで社員一人に相当するのですが、
一つのブックに社員の数だけシートが出来る(予定)のを
そのまま串刺し演算して、全項目で個々に合計を出し、
同じレイアウトのシートで、そのまま全員分を合計した場合の
表を作りたいんです。

元は父の会社の(多分)えらいさんがレイアウトだけしたものを
集計とか丸投げされて、辟易してた父を見かねて横から自分が
見てる状態なんで、運用でもなるべく、PCに不慣れな父に
ストレスがかからないようにしたいんです。

統合で項目連動させるとどうも式なしで1表/シートでないと
綺麗に集計できない(列方向の別表の集計が崩れる)みたいですし、
項目連動させなければ複数表でも集計できるんですが、それはそれで
式が混入してるセルがチョロチョロでてくるんで、父にマニュアルで
範囲を指定させるの(複雑な反復操作)はムリじゃないかと困っています。

自分はExcelは単純な縦横集計かCSVの編集くらいにしか
使っていないので、素人も良いとこなんですが、
父に手間取らせるくらいならマクロとかVBAとかでも
頑張りたいので、どなたか良い方法をご存知ないでしょうか?
912名無しさん@そうだ選挙にいこう:02/08/04 22:17
10行おきに行を挿入するにはどのようにすればよいのでしょうか?
自分なりに組んでみましたがどうにもよくわかりません。
下記のソースだとどこがおかしいのでしょうか教えてください。
Sub test()
Dim h As Integer
Dim i As Integer
Dim j As Integer
For h = 1 To 1080
For i = 1 To 100
j = (h * 10) + i
Worksheets("1").Rows(j).Insert shift:=xlShiftDown
Next i
Next h
End Sub
913名無しさん@そうだ選挙にいこう:02/08/04 22:52
>>912
こういう処理?

Sub test()
  Dim i As Long
  Application.ScreenUpdating = False
  'カウントダウンでループ
  For i = 10800 To 1 Step -1
    If i Mod 10 = 0 Then
      application.StatusBar = i
      Worksheets("1").Rows(i + 1).Insert shift:=xlShiftDown
    End If
  Next i
  Application.ScreenUpdating = True
  application.StatusBar = False
End Sub
>>912

Worksheets("1").Rows(j).Insert shift:=xlShiftDown の代りに

Debug.Print j

を入れて、表示−イミディエイトウィンドウで
j を見てみ。おかしいのが解かる。

A列にデータがあるとして、

Sub Test1()
Dim i As Long
 i = 10
 Do While ActiveSheet.Range("A" & i) <> ""
   ActiveSheet.Range("A" & i).Insert
   i = i + 10
 Loop
End Sub
915914:02/08/04 23:04

ActiveSheet.Range("A" & i).Insert を

ActiveSheet.Rows(i).Insert にせな、いけんね。
916名無しさん@そうだ選挙にいこう:02/08/04 23:05
>>911
全部同じフォーマットの表ならば、串刺し合計はマクロでなく数式で十分です。

合計を入力するシートのセルに =SUM( を入力後、普通にSumの範囲指定
をするように集計するシートの一番左側のシートの該当セルをクリックし、
その後 Shift を押しながら一番右側のシートのタブをクリックすると、
シートをまたいで同じ番地のセルを串刺しにして合計できます。

社員1(シート名)から社員6のA1セルの合計を出す場合、
=SUM(社員1:社員6!A1) となります。直接入力しても大丈夫です。
>>911

ちまちま書いてて、良く読んでないけど、

1.ひとつのシートが1名分で、みんな同じレイアウトのシートが社員数分ある。
2.それを全部串刺ししたい。

と判断。

Sheet1〜Sheet5順番に並んでいるブックがあったとして、
Sheet1を集計用として、A1に =SUM(Sheet2:Sheet5!A1) といれる。

集計したい最初のシート名と最後のシート名を入れる。

こういう事?
>>916
ΣΣΣヽ(゚Д゚; )ノ

ありがとうございます。完全に要求仕様を満たしてくれてると思います。
くっはぁぁぁ!!土日を浪費…
。・゚・(ノД`)・゚・。
919アイ困:02/08/04 23:27
オリジナルアイコンのイメージ情報はどこに保存されてますか。重篤エラーで
ツールバーが初期化されてしまったとき復帰させたいのです。
920911:02/08/04 23:32
>>917
そです。
まさかSUMが奥行き方向に範囲指定で計算できるなんて
想像つきませんでした。
いや想像はしてたんですけど、一列ごと指定とか一行ごと指定
の時と同じく、範囲指定が出来なくてデータ以外のゴミがあると
計算できないと思ってたんです。
921名無しさん@そうだ選挙にいこう:02/08/05 02:14
913
ありがとうございます。
求めたとおりの動きでした。
914
ありがとうございます。
Debug.Print j
は勉強になりました。
922Word20000:02/08/05 09:41
870です。
>>872-873さん、その他のみなさん、参考になりました。ありがとう。
923名無しさん@お腹いっぱい。 :02/08/05 10:02
エクセル2002をWin98で使ってます。

1つのエクセルファイルに、ワークシートが100枚くらい
あるのですが、グループ分けにして、整理したいのですが
そういう機能があれば、教えてください。 よろしくです。l
924Word20000:02/08/05 10:48
>>870ですが、あつかましくも二度目の質問です。
>>872-873の方法だと、英数カナすべてが半角になってしまいますよね。
たとえば英数のみ「選択的に」半角にするというような記述は可能でしょうか。
全角・半角が混在しているデータは見苦しいし、処理に支障を来たす場合もあります。
英数は半角、カナは全角に一括して変換できる方法があればなあ、と前から思っていたのです。
どうするのがもっとも合理的だと思われますか。
925名無しさん@そうだ選挙にいこう:02/08/05 14:20
Excel2000で、ズーム100%でもやたらと行列番号が大きく表示される
のですが、標準に戻すにはどうしたらいいでしょうか?
>>925
[ツール] - [オプション] - [全般] タブの [サイズ] を変えれ
927名無しさん@そうだ選挙にいこう:02/08/05 14:33
関数作れば?

Function へんかーん(s1 As String) As String
Dim a As String, b As String, c As String
a = StrConv(s1, vbWide)
c = ""
For l = 1 To Len(a)
b = StrConv(Mid(a, l, 1), vbNarrow)
Select Case Asc(b)
Case Is < 165
c = c & StrConv(b, vbNarrow)
Case Else
c = c & StrConv(b, vbWide)
End Select
Next
へんかーん = c
End Function

Sub Macro1()
Dim s As String
s = "アイウエオ=クケコ123456a123sd"
MsgBox へんかーん(s)
End Sub

とか。
928927:02/08/05 14:34
>>924
です。書き忘れ。
>>923
状況が把握できんが「作業グループ」で処理できないの?
ちなみに「作業グループ」は複数のシートを選択すればok
930名無しさん@そうだ選挙にいこう:02/08/05 22:43
EXCELの数式の評価についてお伺いしたいのですが、
既に数式として評価されてしまった「=hogehoge」という
データが#NAME?と表示され、シートに散在しています。

書式設定を「文字列」にしてダブルクリックしたり、
=の前に評価させない為に「'」を一個ずつ挿入するのでは
間に合わないほど大量にデータが存在しています。

この=のついた文字列を後から文字列として再評価する
簡単な方法は無いでしょうか?よろしくお願いします。
931930:02/08/05 22:48
自己レスです。
検索文字列に=を指定し、置換文字列に'=を指定したら一発で
所望の挙動になりました。ありがとうございました。
932名無しさん@そうだ選挙にいこう:02/08/06 03:22
Excel97を使っているのですが挿入のショートカットみたいなのは無いでしょうか?

今は左端のナンバーの部分で右クリック→挿入とやっているのですが
キーボードから手が離れるのでかなり効率悪いのです。
>>932
[Shift]+[Space] で行の選択をしてから、
[Shift]+[Ctrl]+[+(プラス)] で挿入とか。
一発でやるのはわからん。フォローを待つ。
934933:02/08/06 05:29
あっ、上のレスは >932の質問を「行の挿入」と理解したものです。
ただの挿入なら、[Shift]+[Ctrl]+[+(プラス)]のみで可。
935923:02/08/06 13:52
>>929
どうも、ありがとう。
やってみましたが、「作業グループ」を選択、解除でどのような違いが
あるのですか?

ちょっとだけでいいので、説明お願いします。
936Word20000:02/08/06 15:15
>>924ですが。
>>927さん、どうもです。
VBA初級者なのでソースが充分に理解できず、とりあえずコピペして使わせてもらってます。
ちなみに↓こんなのもみつけました。同じことを考える人がいるもんですね。
www.geocities.co.jp/SilkRoad/4511/vb/kowaza.htm#z2h
937名無しさん@そうだ選挙にいこう:02/08/06 15:46
午前「9:00」〜午前「1;00」までの勤務時間を求めるには?

時刻表記は上記のままでやりたいんですが
938名無しさん@そうだ選挙にいこう:02/08/06 17:46
>>937
データはシリアル値で入力し、表記の方を表示形式で調整。
939名無しさん@そうだ選挙にいこう:02/08/06 17:49
>>923, >>935
オレは>>929ではないが、何をやりたいのかわからないから
適切な回答がないのだと思う。
ワークシートの枚数が多すぎて扱いにくいというのなら、
複数のブックに分けたらいいんじゃないの?
940名無しさん@そうだ選挙にいこう:02/08/06 22:03
質問させてください。

A×B=C で、Cの値を四捨五入したいのですが、
Cの1%の桁で、四捨五入したいのです。たとえば
1002の値でしたら1000、1006の値でしたら1010に、
10020でしたら10000、10060でしたら10100になるようにしたいのです。
整数にしたいので、
たとえば、30.5だと30になるのです。

これってできるでしょうか?
エクセルのバージョンは 97です。
WIN98です。

会社で、みんなでエクセルの本を片っ端から引きましたが
どこにも載っていなくて…これが出来ると
すごく仕事の効率アップになるのですが…。

どうぞよろしくお願いたします。
エクセルの機能としてではなくて、算数だか数学だかの問題として
考えればできると思う。使いそうなのを適当にあげてみると、加減
乗除とInt、Fix、Mod…
942名無しさん@そうだ選挙にいこう:02/08/06 23:18
算数だか数学だか…ですか。 
それだとエクセルよりも不得意かもです…(苦笑)
かなり厳しい数式になるということでしょうか?
それすらわからない段階で、お恥ずかしいです。

私にもわかる数式(関数)を、教えていただけないでしょうか…。
すみません、他力本願で…。
943名無しさん@そうだ選挙にいこう:02/08/06 23:30
あくまで
最近やっと関数のヘルプの見方が分かるようになった
超、未熟なスキルの私の場合ですが

A X B の答えが C1に入っているとして

D1に
==MROUND(C1,10^(LEN(INT(C1/100))*(C1>=10)))

なんて、どうでしょう
一応、例にあがってる変換はできたみたいですけど・・・

上級者の、スマートな解答が見てみたいです。
944名無しさん@そうだ選挙にいこう:02/08/07 00:10
↑の関数、そのまま入れてみたのですが
私のエクセルでは、エラーが出てしまいます。なぜだか自分でわかりません。
そのとおりに入れたんですけど…。すいません、もう1回教えてください。

しっかし…こんなすごい関数だなんて…。
自分がやろうとしていたことがすごいことだったんだと
いまさら驚いてます。
945名無しさん@そうだ選挙にいこう:02/08/07 00:11
>>940
30.5だと31ではなくて?

数学っぽい数式
=IF(A1<100,INT(A1),ROUND(A1,-(INT(LOG(A1))-2)))
30になるらしいので100未満は切り捨て処理
946名無しさん@そうだ選挙にいこう:02/08/07 00:12
>>944
943ではないですが、分析ツール組み込んでありますか?
947名無しさん@そうだ選挙にいこう:02/08/07 00:22
943

あぁ、。。できませんでしたか・・・
なんででしょう
前述のとおり私は、未熟なもので
環境の違いまでは、分かりません・・・

しいて言えば、コピペのミスで943の書き込みには
『=』(イコール)を二個連続で書いてしまっていますが

あれはホントはひとつですけどそんなミスではないですよね?
948名無しさん@そうだ選挙にいこう:02/08/07 00:32
>945
Intの場所を変えればIfは不要だよね?
=ROUND(INT(A1),2-LOG(A1))
949名無しさん@そうだ選挙にいこう:02/08/07 00:46
正直、シート関数を組合わせるだけなのでそんなにすごくない。
950945:02/08/07 00:46
あ、そうか。
Logのことしか思いつかなかった。
951困りました:02/08/07 01:06
すみません
ひとつお聞きしたいんですが、
マクロでセルの参照や移動を制限できませんかね
例えば、一画面分のA1〜L24しか参照や入力しか出来なくするなど
出来ませんかね、どなたかご教授ください。
952名無しさん@そうだ選挙にいこう:02/08/07 01:08
メニューバーの中の「データ」が
無くなってしまいました。
並べ替えとか出来なくなってしまい不便です。
これって壊れたのでしょうか?
復旧の方法をおながいします。
953名無しさん@そうだ選挙にいこう:02/08/07 01:17
>>952
このマクロを実行したら出てくると思うよ。
Sub Macro1()
  Application.CommandBars(1).Reset
End Sub
>>951
Sub auto_open()
 Worksheets(1).ScrollArea = "A1:L24"
End Sub
955944:02/08/07 06:59
みなさん、ほんとにありがとうございます!!!!!
948さんのでやってみましたら、出来ました!!!!
も〜〜〜すごい嬉しいです!これで仕事がはかどります!!

・・・私ももっと勉強します。正直
みなさんの書かれている式、ぜんぜん理解できませんので…

ありがとうございました。m(__)m
956名無しさん@そうだ選挙にいこう:02/08/07 09:50
>>938
何をおしゃっているのかさっぱりわからないのですが。
例えば、7:00から次の日の7:00まで働いたときはどうすればいいですか?

(HOUR(D10)+MINUTE(D10)/60)-(HOUR(C10)+MINUTE(C10)/60)

これにあとちょっと手を加えてなんとかならないでしょうか?
957名無しさん@そうだ選挙にいこう:02/08/07 12:57
>>956
J1〜J4に
午前
午後
翌日の午前
翌日の午後

と書いて、

(始業時刻用のコンボボックス)
入力範囲   $J$1:$J$2
リンクするセル  F10

(終業時刻用のコンボボックス)
入力範囲   $J$1:$J$4
リンクするセル  G10

を作る。
958957:02/08/07 13:00
H10
=((F10-1)*12+MOD(HOUR(C10),12))*60+MINUTE(C10)
I10
=((G10-1)*12+MOD(HOUR(D10),12))*60+MINUTE(D10)

E10
=INT((I10-H10)/60)&":"&TEXT(INT(MOD(I10-H10,60)),"00")

として、コンボボックスで午前午後を選択しつつ、
C10, D10への始業時刻、終業時刻を入力すると
E10に表示。
959957:02/08/07 13:02
これは、
午前12:00
...
午前11:59
午後12:00
...
午後11:59
という時間の数え方を考えてる。
こうだよね?

入力規則で1:00〜12:59と制限したり、
終業時刻は必ず始業時刻より遅くなるように制限したり
する必要があるかと。

注意としては、
暇つぶしにやってみただけだということと、
オレは普段エクセル使ってないということ。
危険かも。
960名無しさん@そうだ選挙にいこう:02/08/07 13:21
厨房質問でもうしわけありません、
図形描画で直線を曲げる(フリーフォーム以外で)
のはどうしたらいいのでしょうか?

なにかボタンを押しながらやるような気がしたので
すが忘れてしまいました。helpも探したのですが
わかりません。助けて・・・
961957:02/08/07 13:51
その直線の上で右クリック→[頂点の編集]

その直線の上で右クリック→[頂点の追加]

頂点を掴んで移動

その直線の上で右クリック→[頂点を中心にスムージング]

でできたよ。
962957:02/08/07 13:53
× その直線の上で右クリック→[頂点を中心にスムージング]
○ その頂点の上で右クリック→[頂点を中心にスムージング]



963957:02/08/07 14:08
きっとこうだ。すんません。

その直線の上で右クリック→[頂点の編集]

その直線の上で右クリック→[線分を曲げる]
964名無しさん@そうだ選挙にいこう:02/08/07 14:14
rounddown(((1*60+9.4)*6/12-33.5)*160/12+50,0)
rounddown(((1*60+9.4)*(12-6)/12-(1*60+9.4-35.9))*160/12+50,0)

というとある計算をしていたんです。
この場合、12-6=6、60+9.4-35.9=33.5、なので
2つの計算式の計算結果は当然一致するものと思っていたんです。

ところが、ふたを開けてみたら前者は66、後者は65となってしまい(゚Д゚)ハァ?と思いました。
rounddown関数を外して値を調べてみると、どうやら、

前者が66.0000000000000
後者が65.9999999999999

っていうことになってるようなんです。
0.00000000000001の差分が出てしまったのがどうにも理解不能でございまして…
この原因や対処法がありましたら教えて下さい。おながいします。
965名無しさん@そうだ選挙にいこう:02/08/07 14:17
>>964
ちなみにversionは2002、OSはXPです。
966名無しさん@そうだ選挙にいこう:02/08/07 14:20
>963
げっ!!!スプライン曲線もできるとは、シランカッタ。サンキュー。
967957:02/08/07 14:40
=((1*60+9.4)*(12-6)/12-(1*60+9.4-35.9))*160/12+50
→65.9999999999999

=((1*60+9.4)*(12-6)/12-1*60-9.4+35.9)*160/12+50
→66.0000000000000

になった。なんでだろー。
968957:02/08/07 14:43
で、
=(1*60+9.4)*(12-6)/12-(1*60+9.4-35.9)
→1.2000000000000

=(1*60+9.4)*(12-6)/12-1*60-9.4+35.9
→1.2000000000000

970938:02/08/07 16:38
>>956
前の方で、時間の計算するなら表示形式を設定しろ、といったものだけど、
理解されなかったようなので説明すると、

例えば
A1に開始時刻、B1に終了時刻、を入力して、C1に勤務時間を計算させたいとき、
A1とB1の書式の表示形式を、m/d h:mm AM/PM
C1の表示形式を、[h]:mm
と設定する。

その上で、
A1に 8/7 7:00 AM
B1に 8/8 7:10 AM
と入力して、C1に =B1-A1 と入れれば、
C1に 24:00 と表示される。

基本的に、EXCELで日付や時刻の計算するときには、
HOUR()やMINUTE()は不要。日時分秒を別々に分けたりする必要は無い。

シリアル値などの意味が分からなければ、ただ聞き返すよりヘルプを読め。
971名無しさん@そうだ選挙にいこう:02/08/07 18:19
質問させてください。

式が入ったセルで、計算する値や参照する値がないとき、
エラーメッセージ(#DIV/0!や#REF!など)がでますが、
これを表示させない機能っていうのはありますか?

バージョンは97、OSはWIN95です。
印刷させない機能でも良いのですが。

よろしくお願いします。

972名無しさん@そうだ選挙にいこう:02/08/07 18:30
「条件分岐のついた表示形式」
のやり方を教えてください。
973名無しさん@そうだ選挙にいこう:02/08/07 18:31
974名無しさん@そうだ選挙にいこう:02/08/07 18:36
>>972
関数IFとTEXTを組み合わせれば?
975名無しさん@そうだ選挙にいこう:02/08/07 18:37
>>972
設定したいセルを選択して 書式 → 条件付書式
で分岐内容を指定する(条件は3つまで)
>>975
表示形式って質問っしょ
普通じゃむりぽ
977972, 973:02/08/07 18:42
>>974
そのセルが式の時はなんとなく分かるんですけど、
値の時はどうすればいいのかなと思いまして。

>>975
Excel97を使ってるんですが、
Excel97では条件書式に表示形式って設定できない
と思うんですけど、新しい奴だとできるってことでしょうか?
978972, 973:02/08/07 18:45
ttp://www.shuwasystem.co.jp/books/wwwsrch/cgi-bin/content/909/mokuji.htm
この本の目次に

>4.4.4 ●条件分岐のついた表示形式を作る(その1)
>4.4.5 ●条件分岐のついた表示形式を作る(その2)

ってのがあるんですよ。
あ、買えば良いのか?
979974:02/08/07 18:51
>>977
情報関数で振り分けて、分岐には乗せれない?
具体例だしてみれば?今日は人も多い様だし(w
980972, 973:02/08/07 18:57
勉強してるだけなので、自分がやりたい作業は特にないですが、
>>937の例を借りて

8/7 7:00 AM と入力して 午前 7:00
8/7 7:00 PM と入力して 午後 7:00

とか。




981974:02/08/07 19:34
関数を使うのだから、入力セルと表示セルは異なる。
A1を入力セルとして
B1=IF(A1-TRUNC(A1)<0.5,TEXT(A1,"m/d h:mm 午前"),TEXT(A1,"m/d h:mm 午後"))

でもこれはなんとなく例が的を外している様な気がしないでもない…
こういうパターンを言ってたんじゃないような?
982974:02/08/07 19:39
>>978の本にあるのは表示形式のユーザー設定で扱える条件分岐の事か?(推測)
以下はxl97のヘルプよりコピペ。
xl2000以降でどう進化したかは使ってないのでスマソ。

数値が指定した条件を満たす場合にだけ表示形式を設定するには、
条件を角かっこで囲みます。条件は、比較演算子と値で指定します。
たとえば、次の書式では、数値の桁数が 5 桁より少ない場合は、
先頭に余分なゼロを表示した 5 桁の郵便番号が表示され、
数値の桁数が 5 桁より多い場合は、先頭に余分なゼロを表示した 9 桁の
郵便番号にハイフンが挿入されて表示されます。

[<=99999]00000;00000-0000
983972, 973:02/08/07 19:50
>>981
分かりにくくてすみませんでした。
値を入力するところと表示させるところを同じ所で済ます方法を探してました。
984972, 973:02/08/07 19:57
>>982
ありがとうございます。
そうです。そういう話です。
(リロードし損ねて>>982読む前に>>983書き込んでしまいました。)
でも、ヘルプに載ってる話だったんですね。すみません。
>983
となると、>982の話だね。
[ ]で囲んだ条件に式は入れられない様なので、シンプルな分岐しか出来ない。
あとは、VBAとか。
986972, 973:02/08/07 20:05
>>985
>[ ]で囲んだ条件に式は入れられない様なので、シンプルな分岐しか出来ない。

あ、そうなんですか。早とちり。
987名無しさん@そうだ選挙にいこう:02/08/07 21:20
初歩的な質問で悪いんですが、ひとつの列に1,2,3,4・・・という
風に一定のスパンで数を増やしていきたいんですが、一つ一つ打ち込むの
ではなく、一括して処理するにはどのようにすればいいのでしょう?
いくつか打って、それらを選択。
右下の角を掴んで下にドラッグ。
989名無しさん@そうだ選挙にいこう:02/08/07 21:34
>>987 等差数列ならオートフィルでOK。
具体的には二つ以上の値を連続するセルに入力して、そのセル範囲を選択。
範囲の右下角にマウスを合わせると、マウスのポインタが黒い『+』に変わる。
そしたら、目的の終点セルまでドラッグ。

オートフィルについては、あとはヘルプを参照
あり、ゴメン。>988
すみません
小質問させてください

ランダム関数って
他のセルいじくると
全部数値が変わるんですが
仕様ですか?
992名無しさん@そうだ選挙にいこう:02/08/07 21:53
再計算の影響です。
どこかにnow関数をいれて、表示形式を秒までにしてみそ。実感できるから。
994名無しさん@そうだ選挙にいこう:02/08/08 07:02
>>969
こればっかりは仕方のないことだったんですね…

というわけで、適当な桁数で一度round関数を仕掛けて、
その上でrounddown関数を使ってみたら上手くいきました。

どうもありがとうございます。
>>994

+0.00000001 という風に、四捨五入に影響しないくらい小さい数を足して
0.99999...をつぶしてからRoundしたらうまくいきます。

逃げですけどね。
996名無しさん@そうだ選挙にいこう:02/08/09 12:06
1000
9971000:02/08/09 12:07
1000ダゴラ!
998名無しさん@そうだ選挙にいこう:02/08/09 12:11
1 0 0 0
999名無しさん@そうだ選挙にいこう:02/08/09 12:25
999
1000名無しさん@そうだ選挙にいこう:02/08/09 12:26
1000 first
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。