Excel総合相談所 16Excel総合相談所 16

このエントリーをはてなブックマークに追加
>>949
使い方が間違ってると思う
>>951
それはOSの問題では?
98かMe使ってない?
>>937
>チェックボックスのオン/オフ
をしようと、クリックすると、
ポインタが出て、位置サイズ変更モード(?)になります。
>>954
「デザインモードの終了」ボタン(青い三角のやつ)をクリックして編集状態から抜ける。
'SheetCheckサブルーチン
Sub Macro_find0010(cr As Range, f As Range, Msg0 As Variant, Msg1 As Variant)
'cr 検索するセル範囲
'f 検索する文字をセルで選択
'Msg0 検索された時のメッセージ
'Msg1 検索されなかったときのメッセージ
Dim c As Range
Set c = cr.Cells.Find(What:=f, LookIn:=xlValues)
If Not c Is Nothing Then
Adr = c.Address
Do
'MsgBox Msg0 '検索した時に表示したい場合
'検索した時、セルA1に1を加算
Sheet2.Range("A1") = Sheet2.Range("A1") + 1

'セルA1が8に成った時の処理
If Sheet2.Range("A1") = 8 Then Call Macro_find0030

Set c = cr.Cells.FindNext(c)

If c.Address = Adr Then Exit Do
Loop

Else: MsgBox Msg1 '検索されなかった時のメッセージ
End If
End Sub

8回呼び出して使った時に、8個検索されたら次の処理へ進めるサブルーチンなんですが、動かすと
「If c.Address = Adr」のところで
「オブジェクト変数、またはWithブロック変数がせっていされていません」ってでるんですが何故かわかりますか?
だいぶ煮詰まってしまいますた
957名無しさん@そうだ選挙にいこう:03/09/17 07:43
質問です。
マクロを記述する際、

デスクトップやマイドキュメントなどに置かれている
他のエクセルファイルに作業させるために
ファイル指定するには

c:\my documennts\data.xls
c:\windows\デスクトップ\data.xls

などと決め打ちで記述するのですが
PCやOSよってはフォルダの階層構成が微妙に違っていることと思います。

そこで
「マイドキュメント」など、ウィンドウズのレジストリにも設定されているようなお決まりフォルダならば
フォルダ階層構成が変わっていても対応できるような指定記述方法はありますか?

また宜しかったら
マッキントッシュのエクセルも使用していますので
マックの「デスクトップ」の指定方法も知りたいです。
>>957
SHGetSpecialFolderLocation とか SHGetFolderPath で取得しろ
林檎は知らん
959名無しさん@そうだ選挙にいこう:03/09/17 14:18
>>953
XPなんですけどー。
なんで不安定なんだろう、、、
>>959
うちの会社でも数人程度で壊れたよ。
Accessだって同時アクセス数10人程度といわれてるから
こんなものじゃないの?
961名無しさん@そうだ選挙にいこう:03/09/17 15:21
Excelのセルに
ハイパーリンクが貼ってあるURL先の生死状態を調査するにはどうすればいいのでしょうか?
962名無しさん@そうだ選挙にいこう:03/09/17 15:58
Excel97の質問でもいいでしょうか…?
Excel97 SR-1、OSはWinNTです。
DBファイルをインポートしたくて「外部データの取込」からデータソースの作成をしました。
そこからクエリを作成しようとして失敗しました。
エラーの原因は何となくわかったので、以前のデータソースを削除か編集したいんですが、
どうしようもできません。
「データソースの選択」で選択して右クリックしても「ヘルプ」しか表示されないです。
どうしたら削除(or 編集)できるんでしょうか?
>>951
その症状見たことあるけど、エクセルをインストールし直したら直ったよ。
964名無しさん@そうだ選挙にいこう:03/09/17 18:52
住所の中に含まれる半角のカタカナのみ全角に変換して、
数字、アルファベットは半角のままにしたいんですが、
何かいい方法はないでしょうか?
>>957
漏れ頭悪いんで質問の意図が良く分からないが

一つのネットワークフォルダにxlsファイルを入れて、どのパソコンでも使えるようにするコツは

絶対パスではなくて、「ThisWorkbook.path」を漏れは使ってるよ。
一つのフォルダに入れておけば外部ブック参照しても同じパス(ThisWorkbook.path)だから。

これでいいのかな?
966名無しさん@そうだ選挙にいこう:03/09/17 21:49
>>877
おかげさまで解決しますた!アリガd。
967名無しさん@そうだ選挙にいこう:03/09/17 21:58
教えてください。すんごい微妙な質問ですが・・・。
データの統合の話なんですけど
項目が一致しない、並びが一致しない表に対して
統合ってすごい便利な機能だと思うんですが
データが同じフォーマットで同じ位置に入力されているワークシートの統合って
なんか意味あります?
串刺しと比べてなんかメリットありますか?
誰か教えてください〜。
>956

↓ここで Macro_find0030 を Call して
If Sheet2.Range("A1") = 8 Then Call Macro_find0030

↓ここに戻った時に c is Nothing になるような処理をしてんじゃねーの?
Set c = cr.Cells.FindNext(c)

↓んで、Noting の addressって何よと。
If c.Address = Adr Then Exit Do
969名無しさん@そうだ選挙にいこう :03/09/17 23:40
グラフ内に追加した多項式近似曲線と
任意の数式により導き出された曲線との交点の値を求めたいのですが
どのようにするのでしょうか?
通常の方程式の解き方に従う。
ゴールシークも便利。
971名無しさん@そうだ選挙にいこう:03/09/18 00:58
仕事先から、JISコードで入力するように言われたのですが、
確認、またはコードを変更するには、どのようにすればいいのでしょうか?

よろしくお願いします。

Excel2002を使用しています。
972名無しさん@そうだ選挙にいこう:03/09/18 01:19
お尋ねしたいのですが、
[セルの書式設定→ユーザー定義]
で定義したもの(例 [$X]#,##0;[$X]-#,##0)はデータを他PCに移しても見れますでしょうか?

宜しくお願いします。 ・゚・(つД`)・゚・
973956:03/09/18 01:22
>>968 さん
ありがとうございます

Set c = cr.Cells.FindNext(c) と、
If c.Address = Adr Then Exit Do を

上下入れ替えて使ってみたらよかったんですね

一個一個のプロシージャは旨く動くのに多段連結、猛烈な参照をしたら駄目なのか・・・と思ってたら
やっぱり、自分のコードが原因なのね
達人は夜、稼動してるんだろうか
974名無しさん@そうだ選挙にいこう:03/09/18 01:54
OS XP excel2002です

表の中にデータを打ち込む作業をしてるのですが
セルによって変換が全角カタカナになったり、ひらがなになったり
してしまいます。全部直接入力にしたいのですが、
行から直してもまたそこのセルをクリックすると全角カタカナとかに
入力モードが設定されてます。対処法の知恵を貸してください。
質問の意味がわかりずらくてすいません
975名無しさん@そうだ選挙にいこう:03/09/18 02:30
>>974
入力規則から設定できないんですか?
976名無しさん@そうだ選挙にいこう:03/09/18 10:39
WinME Excel2000です。

条件付書式で3つ(何もない状態を含めて4つ)以上の条件を設定する事は不可能でしょうか?
5つに区分けしたいのですが…。
>>976
無理。
VBAのヘルプのFormatConditionsコレクションオブジェクトの項目見てみ。
どうしても条件を増やしたければ、Modifyメソッドで既存の条件を変更
するしかない。
978976:03/09/18 13:13
>>977
ありがとうございます。
条件付書式以外で別の対応策考えてみます。
979名無しさん@そうだ選挙にいこう:03/09/18 13:55
すみませんが、エクセルで時給の計算をしようと思ったんですが、
例えば、セルA1に15:00、セルB1に24:00と入力、
22:00から24:00までの時間に深夜手当てがつくので、
そこの時間だけ時給を1.25倍にしたいんですが、
数式等で22:00から24:00まで深夜手当てを適用させる方法が
あったら教えて頂きたいので宜しくお願いいたします。
>>979
A1に開始時刻、B1に終了時刻、C1に時給が入力され、D1に金額を表示する場合、D1に
=IF(B1>0.916666667,(0.916666667-A1)*C1*24+(B1-0.916666667)*C1*1.25*24,(B1-A1)*C1*24)
どんな手法で時給計算してるのか解らないので、シリアル値のまま計算した。
0.916666667が22:00。
考え方としては、B1の値が22:00を越えた場合、開始時刻から22:00までと22:00から終了時刻までに
分けて計算後、合算。
22:00を越えない場合は普通に計算。
>>980
なんてダサい方法・・・
>>981
カコイイ方法書いて見ろ
書けねーくせに
HOUR関数
>>979
A1とB1の表示形式を「0":00"」にして、A1に「15」、B1に「24」と入力。
=(B1-A1)*【時給】+(B1-22)*【時給】*0.25
>>984
書き忘れた。
IFと組み合わせるのを忘れずに。
IF(B1<22,〜,〜)みたいに。
おまいら、HOURだけでMINUTEは考慮しないつもりか?
そろそろ次のスレの用意をお願いします。
なんか、ちょっと前に謎のフライングしたのがあるが
使うか?

Excel総合相談所 17
http://pc2.2ch.net/test/read.cgi/bsoft/1062260735/
989名無しさん@そうだ選挙にいこう:03/09/18 23:42
定時(10進数) @=9.50 A=17.50 B=22.00
【出勤表】
出社時間 退社時間 出社時間 退社時間 早朝出勤 通常時間 残業時間 深夜時間
入力1(A) 入力2(B)  式1(C)   式2(D)  式3(E)   式4(F)  式5(G)   式6(H)

式1:C =HOUR(A)+MINUTE(INT(A*96+1)/96)/60 :15分ごとに切上げ10進数に変換
式2:D =HOUR(B)+MINUTE(INT(B*96)/96)/60+IF(DAY(A)=DAY(B),0,24) :15分ごとに切下げ10進数に変換
式3:E =IF(C<@,@-C,0)
式4:F =D-@-IF(D-@<3,0,1)  : 3時間以上は休憩1時間を引く
式5:G =IF(D>A,MIN(D,B)-A,0)
式6:H =IF(D>B,D-B,0)
上の各式は =IF(COUNT(A.B)=2, 式1〜6 ,"") でエラーを防止
で、979は逃亡中か?
>>990
電卓で残業代を計算してる最中だから邪魔するな。

1000 ・・・・・な訳無いな・・・・・・・・・
>>989
で、何?
993名無しさん@そうだ選挙にいこう:03/09/19 00:17
>>974ですが
入力規則から設定してもだめだった気がします。
何か方法はほかにあったらお願いします
994名無しさん@そうだ選挙にいこう:03/09/19 15:55
教えてください。
A1に郵便番号をいれB1に住所が自動的に
表示のしかたを教えてください。
   A      B
1 100-0001  東京都千代田区…

見たいな感じで。お願いします。


エクセルでマクロを組むと印刷した際に数式が変わってしまうということを聞いたのですが、
本当なのでしょうか。

もし本当ならその場合の対処法とかありましたら教えてください。
OS98、excel98です。
996名無しさん@そうだ選挙にいこう:03/09/19 17:59
お手上げ木毎
∩(´・(ェ)・`)∩
997名無しさん@そうだ選挙にいこう:03/09/19 19:26
>>995
なんかの聞き違いだんべ。



1000なのか?
999名無しさん@そうだ選挙にいこう:03/09/19 20:25
>>997
ありがとうございました。
さっそくやってみます。
1000名無しさん@そうだ選挙にいこう:03/09/19 20:27
1000
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。