Excel総合相談所 35

このエントリーをはてなブックマークに追加
826名無しさん@そうだ選挙にいこう:2005/07/17(日) 18:54:12
DATEVALUEを使うなら

=DATEVALUE("H"&A1&"/"&B1&"/"&C1)
827名無しさん@そうだ選挙にいこう:2005/07/17(日) 20:22:11
>>803
君もしかして本書いてない?
828名無しさん@そうだ選挙にいこう:2005/07/17(日) 20:45:37
>>827
すばらしい洞察力ですね。書いてませんよ。
829名無しさん@そうだ選挙にいこう:2005/07/17(日) 21:23:40
エクセルで次のように関数を使った時、
=min(find({1,2,3,4,5,6,7,8,9},A1&123456789))
※A1のセルで一番初めに出現する数値が何文字目かを調べる。
&1234-9はエラー回避のため。
ユーザー定義関数にするためVBAでこう記述したのですが
エラーになってしまいます。
Function user_test1(input1 As String)
user_test1 = WorksheetFunction.Min(WorksheetFunction.Find([1,2,3,4,5,6,7,8,9], input1))
End Function
誰か教えていただけませんか?
OS:XP excel:2002です
830名無しさん@そうだ選挙にいこう:2005/07/17(日) 21:27:02
>>828
そうか、最近深読みしすぎだな。
831名無しさん@そうだ選挙にいこう:2005/07/17(日) 21:31:58
オートコレクトが全然機能しないんですが、
どうしたらいいのでしょうか。
英文を正しく変換して欲しいのですが・・・
ちなみにさっき再インストしました。+オートコレクトオプションを見ても
駄目な理由がさっぱり不明です。
832名無しさん@そうだ選挙にいこう:2005/07/17(日) 21:33:24
すみません↑はexcel2003です
833783:2005/07/17(日) 21:34:29
>>785 hoge ◆hoge//WRxY さん
ちょwwすごいです。ありがとうございます思った通りの動作が確認出来ました!

また分からない所があった時は質問させて頂くと思いますのでよろしくお願い致します。

では、早速>>785さんの教えて下さったコードがなぜそうなるのかをちょっと調べてきます(^・ω・^)v
834名無しさん@そうだ選挙にいこう:2005/07/17(日) 22:06:22
>>829
ユーザー定義関数にするなら、ループ組んで
isnumeric(mid(input1,i,1))がtrueを返す位置を出せばいいじゃん。
835名無しさん@そうだ選挙にいこう:2005/07/17(日) 22:10:16
>>830
ハタから見たら全然深くないから安心していいと思うけど。
836名無しさん@そうだ選挙にいこう:2005/07/17(日) 22:54:03
んだねー
837名無しさん@そうだ選挙にいこう:2005/07/17(日) 23:01:59
834
頂いた意見を参考に組んでみたんですが、数値もスルーされているようです。
評価元が文字列なんでスルーされるのかもしれません。
838名無しさん@そうだ選挙にいこう:2005/07/17(日) 23:14:02
>>837
> 評価元が文字列なんで
関係ないよ。IsNumeric関数は引数が「数値だったら」ではなく
「数値として扱える文字だったら」Trueを返すんだから。
1でも"2"でも"3"でもTrueが返るし文字列から切り出したものも例外ではない。
うまくいかないのは使い方を間違ってるから。

とりあえず組んでみた物を貼ってみよう。
839名無しさん@そうだ選挙にいこう:2005/07/17(日) 23:31:19
838
こんな感じです。
goto使ったりトロいことしてますが、そのへんのつっこみは避けて頂ければ・・

For i = 1 To Len(word)
c = Mid(word, i, 1)
If (WorksheetFunction.IsNumber(c)) Then '数値が見つかった場合
ret = ret & c
'横の文字列を検査
If (i = Len(word)) Then '最後の文字の場合
GoTo endword
End If
s = Mid(word, i + 1, 1) '右の文字列をsに代入
If (WorksheetFunction.istext(c)) Then '文字列が見つかった場合
ret = ret & "@"
End If
End If
Next i
840名無しさん@そうだ選挙にいこう:2005/07/17(日) 23:33:46
>>839
の補足ですが、
文字列には複数の数値があるため、区切りに@を使っています。
(A100b400を100@400と出力させる)
841名無しさん@そうだ選挙にいこう:2005/07/17(日) 23:44:56
>>839-840
最初のと全然違うじゃん
「一番初めに出現する数値が何文字目かを調べる。」んじゃなかったのかよ

それと名前欄には最初のレス番入れろや
842名無しさん@そうだ選挙にいこう:2005/07/17(日) 23:53:31
まずは何がやりたいのか、自分のなかでまとめよう。
自分で自分が何やりたいのかすら把握できてないような状態では
他人にやりたいことが仕えられるわけがない。
843名無しさん@そうだ選挙にいこう:2005/07/18(月) 00:10:57
セル番号が偶数の行に空白を挿入したいんですが
どうしたらいいのでしょうか
excel2003です。
844名無しさん@そうだ選挙にいこう:2005/07/18(月) 00:19:21
>>843
> セル番号が偶数
セル番号って何ですか?
Excelにセル番号なんてないですよ
行番号かセルの値かの間違いでは?

> 行に空白を挿入
行には空白を挿入できません
セルに空白(スペース文字)を挿入か、
行を空白に(クリア)するか
空行を挿入するかの間違いでは?

用語とかわからないなら、具体例を挙げて何がしたいのか説明しましょう
845hoge ◆hoge//WRxY :2005/07/18(月) 01:00:07
>>829
引数の一番初めに出現する数字が先頭から何文字目かを返す。
数字が無ければ0を返す。
Function user_test1(input1 As String) As Long
 Dim i As Long
 Do
  If i = Len(input1) Then Exit Function
  i = i + 1
 Loop Until IsNumeric(Mid(input1, i, 1))
 user_test1 = i
End Function

>>839
引数に含まれる数字のみを"@"区切りで繋げた文字列を返す。
Function user_test2(input1 As String) As String
 Dim buf() As String, foo As Boolean
 Dim i As Long, j As Long
 foo = True
 For i = 1 To Len(input1)
  If IsNumeric(Mid(input1, i, 1)) Then
   If foo Then
    j = j + 1
    ReDim Preserve buf(1 To j)
    foo = False
   End If
   buf(j) = buf(j) & Mid(input1, i, 1)
  Else
    foo = True
  End If
 Next i
 user_test2 = Join(buf, "@")
End Function
846名無しさん@そうだ選挙にいこう:2005/07/18(月) 07:34:06
>>842
でもお前に説明してもわかるかなぁ。
847名無しさん@そうだ選挙にいこう:2005/07/18(月) 08:41:30
とても仲の良い先生たちですね。
848名無しさん@そうだ選挙にいこう:2005/07/18(月) 08:50:22
>>844
セル番号って行番号のことだと思うが、セル番号がないってわけじゃないだろ?
Cells(5).Selectってやってみなよ。

>>843
ようするにこういうことかい?

あ A
い B
う C
え D
お E

こういうデータを下のようにしたいと。

あ A

い B

う C

え D

お E
849名無しさん@そうだ選挙にいこう:2005/07/18(月) 09:42:27
>>844
セル番号はA1が1、A2が2、・・・・と決まってます。
850名無しさん@そうだ選挙にいこう:2005/07/18(月) 10:02:32
それ、セル番号じゃなくて範囲番号
C5:E10を選択した状態ではC5が1、D5が2になる
Selection、Range、Targetなどの範囲を指定しなかった場合
シートが範囲となるってだけ
セル自体に番号情報があるわけではない
851名無しさん@そうだ選挙にいこう:2005/07/18(月) 10:07:26
>>850
それは範囲番号。

>>849が言いたいのはセル番号。1から256×65535までの通し番号。
ただし使い道はない。
852名無しさん@そうだ選挙にいこう:2005/07/18(月) 10:12:53
>>851
よく読め。
853名無しさん@そうだ選挙にいこう:2005/07/18(月) 10:19:40
>>852
多分あなたの知識が不足しているのかと。

あなたの脳内には「範囲番号」はあっても「セル番号」はないのですよね。
であれば理解できないと思います。
854名無しさん@そうだ選挙にいこう:2005/07/18(月) 10:24:12
今ヘルプ見た。セル番号って何に使うんだ?
855名無しさん@そうだ選挙にいこう:2005/07/18(月) 10:28:48
>>851
だから、範囲番号だと言ってるだろうに
Cells(5).Selectというのは、Cellsという範囲内で5番目のセルってこと
例えばCells.Selectってやってみな
全セル=シートが選択状態になるから
つまりCells(5).Selectってのはシートという範囲内での通し番号ってこと
セル自体には番号なんて無いから、範囲を指定しなければ、セルを番号で参照することもできない
セル自体に番号がないことは試しにRange(1).Selectってやってみればわかると思う
856名無しさん@そうだ選挙にいこう:2005/07/18(月) 10:34:52
新しい知識を吸収する気がない奴(>>855)に何を言っても無駄だということが分かった。
857名無しさん@そうだ選挙にいこう:2005/07/18(月) 10:36:30
>>855
なんで自分の理解できる方向に話をすりかえようとしてるの?
質問者の役に立てないなら黙ってればいいのに。
858名無しさん@そうだ選挙にいこう:2005/07/18(月) 10:51:14
でも、Excelの仕様的には
「指定したオブジェクト内の通し番号位置」なので、
>>855の言う通りでは?
ただ、「セル番号」という呼び方が間違いだと言うのは間違いだと思う。
シートに対する通し番号なら「セル番号」って呼んでもいいと思うけど、
セル自体に番号が無いってのもまた正解だったりする。
結局「シートに対する通し番号」を「セル番号」と呼ぶか「シートに対する範囲番号」と呼ぶかの違いだろ。
>>848-855で、呼び方以外に間違ったことを言ってる奴は一人も居ない。
859名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:00:36
>>858
まったく別々の2つの概念があるのですが、なぜ無理矢理
くっつけようとするのか意味不明です。

要はセル番号なんて僕は知りません、ってことでしょ。
恥を上塗る前に黙って自分で調べればいいのに。
860名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:04:28
859が>>859を読んで顔を赤くする日は何時になることやら。。。

ってかもうこの話題はいいよ。
どっちにしろ>>843は情報不足なんだから、質問者がもう一度来るのを待とう。


以後、負け犬の遠吠えが続くかもしれませんが、識者はスルーするように。
861名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:06:30
>>860
もうちょっと苦しくない捨て台詞が吐けないもんなのかね。
862名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:07:33
>>859の言うように、不足知識がある場合は思い込みで
書き込まないで各自調べることにしよう。

今日の22:00頃から再開ってことでいかが?
863名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:10:18
> まったく別々の2つの概念があるのですが
ダウト。(古〜
864名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:13:22
>>863
普通根拠とか添えるもんだけど?
865名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:14:23
> まったく別々の2つの概念があるのですが
では根拠をどうぞ。
866名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:19:13
>>858
ひとつだけ間違いあるよ。
>>855の"全セル=シート"は間違い。
Cellsはあくまでも"全セル"であって"シート"ではない。
その他は>>855以外も含めて合ってるけど。
867859:2005/07/18(月) 11:22:47

ただいま検索中です。

しばらくお待ちください。m(_ _)m
868名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:23:23
元の質問者が戻ってきても引いてしまうような話を
延々とやってるだけということにも気がついてくださいな。
869名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:51:11
>>866
でじま?
870名無しさん@そうだ選挙にいこう:2005/07/18(月) 11:54:48
>>868
元の質問者が戻るってどういう意味?
さっきからずっと参加してますけど。
871名無しさん@そうだ選挙にいこう:2005/07/18(月) 12:09:59
>>870
それは失礼。
俺には起点になってる>>843さんがいるようには思えなかったのでね。
実際、お返事ないし。
872名無しさん@そうだ選挙にいこう:2005/07/18(月) 12:30:06
一つ馬鹿みたいな質問なんですけど
WindowsXP HomeとProがあるじゃないですか?
ProでもExcelとかWordってついてくるんですか?
カタログ見てもいまいちよくわからなくて
お願いします
873名無しさん@そうだ選挙にいこう:2005/07/18(月) 12:36:41
>>872
ProにもHomeにもExcel、Word共に付いていません。
874名無しさん@そうだ選挙にいこう:2005/07/18(月) 13:11:07
>>873
homeもproも本来はついてないってことですね?ついてないやつは自分でつけろってことですか?
値段はいくら位かかりますか?簡単ですか?
875名無しさん@そうだ選挙にいこう