Excel VBA 質問スレ Part32
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2013/10/07(月) 22:19:55.86★1 質問テンプレ(雛形)は用意しませんが、OSとExcelのバージョンは必ず書きましょう。
★2 ExcelのVBA以外の部分に関する質問はNGです。
但し、VBA無しでも出来ることだが、あえてVBAでやりたいって物に関してはOK。
★3 ExcelのVBE(Visual Basic Editor)を使うとしても、VBAの分野以外に関してはスレ違いです。
VBAとは、『Visual Basic for Applications』の略で
Application
├Workbooks
|└Workbook
| ├Worksheets
| |└Worksheet
というApplication以下のオブジェクトを、VB言語で操作するものを指します。
例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、
セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。
★4 とりあえず、Excelのインスタンスを作らずにVB6で出来ることは全てスレ違いだと思ってください。
★5 レベルはどうあれ、ここはプログラマ用の板スレです。プログラマとは、自分でプログラムを組み、
コードを書く人の事なので、自分でやるきは全く無く、丸投げしようって人はお断りです。
ヒントを貰えばあとは自力でなんとかしますって人のみどうぞ。
★6 わからなければとりあえず「マクロの記録」(Alt, T, M, R)
前スレ:Excel VBA 質問スレ Part31
http://toro.2ch.net/test/read.cgi/tech/1376371376/
関連スレ:VBAなんでも質問スレ
http://toro.2ch.net/test/read.cgi/tech/1342087380/
0587デフォルトの名無しさん
2014/01/30(木) 14:14:19.760588デフォルトの名無しさん
2014/01/30(木) 15:52:36.82>>577は結合度の問題だっていってるだろ
そのUtilクラスなり標準モジュールなりに依存するようになるから
クラスの独立性が保てなくなるって話だろ
設計方法論の話であって実装の問題じゃないからな
他のモジュールに依存するクラスを良しとするなら良し
ただし一般的なクラス設計では、他のクラス(モジュール)への依存度は低い方が良いとされてる
0589デフォルトの名無しさん
2014/01/30(木) 16:03:53.460590デフォルトの名無しさん
2014/01/30(木) 16:22:09.70標準モジュール名をUtilに変更して使うのと、C++でstd namespaceにある奴を使うのと、そんなに違いはないと思うけど
0591デフォルトの名無しさん
2014/01/30(木) 17:36:51.01標準モジュール使うのにモジュール名で修飾することなんてほとんどないぞ
もしかして、標準モジュールってそこにメソッドなりがシステム側で用意されてると思ってるのか?
システム側で用意されているものに依存するのと
ユーザ側で用意するのものに依存するのと
そんなに違わないと思うならそれでいいんじゃないかね
0592デフォルトの名無しさん
2014/01/30(木) 18:23:41.57> 標準モジュールの名前なんてどうでもいいんだけど、何でそこにこだわってる?
> 標準モジュール使うのにモジュール名で修飾することなんてほとんどないぞ
グローバルな何かを使うときに、気をつけないといけないのが名前衝突。
標準モジュールでも名前を付けて呼ぶときにそれで修飾しておけば、別の標準モジュールに同名のメソッドが作成されても問題無い。
加えて、他の言語でよくある「namespace」的な役割も持たせられる。
> もしかして、標準モジュールってそこにメソッドなりがシステム側で用意されてると思ってるのか?
何を言ってるんだかわからない。
> システム側で用意されているものに依存するのと
> ユーザ側で用意するのものに依存するのと
> そんなに違わないと思うならそれでいいんじゃないかね
Utilクラスを作ってそこに自作メソッドを入れて使うのと、標準モジュールに名前を付けて使うのに、それほど差はないよねって話。
0593デフォルトの名無しさん
2014/01/30(木) 19:11:22.87>Utilクラスを作ってそこに自作メソッドを入れて使うのと、標準モジュールに名前を付けて使うのに、それほど差はないよねって話。
依存関係においてはクラスだろうが標準モジュールだろうが大差ない
Utilクラスに依存するのはOKなのにUtil標準モジュールに依存するのはダメとかいうのは話がおかしい
つまり標準モジュール呼び出しの代替案がUtilクラスにまとめるってのはおかしな話だが、それは俺の意見じゃないぞ
0594デフォルトの名無しさん
2014/01/30(木) 19:48:24.290595デフォルトの名無しさん
2014/01/30(木) 22:18:37.25それこそ標準モジュール向きだと思うけどなぁ。
>>582
代替え案としては、クラスモジュールで作っておいて
そのインスタンスを、使う側のクラスのプロパティに設定して内部で使う。かなぁ。
0596デフォルトの名無しさん
2014/01/31(金) 00:46:27.000597デフォルトの名無しさん
2014/01/31(金) 06:18:42.27て言うかそんなこと出来るのかね
0598デフォルトの名無しさん
2014/01/31(金) 07:20:58.00プロシジャを他のブックにエクスポートとか出来たりもしたんじゃなかったっけ
(俺には出来んけど)
0599デフォルトの名無しさん
2014/01/31(金) 12:26:54.30ファイル - オプション - セキュリティセンター - セキュリティ センターの設定 - マクロの設定 - VBA プロジェクト オブジェクト モデルへのアクセスを信頼する
0600デフォルトの名無しさん
2014/01/31(金) 12:43:20.84どこかに数字が入力されてる時はマクロ実行って感じで
OSは7、エクセルは2010使っています
よろしくお願いします
0601デフォルトの名無しさん
2014/01/31(金) 13:54:53.980602デフォルトの名無しさん
2014/01/31(金) 16:53:24.380603デフォルトの名無しさん
2014/01/31(金) 17:59:38.260604デフォルトの名無しさん
2014/01/31(金) 18:03:32.360605デフォルトの名無しさん
2014/01/31(金) 18:14:47.51条件をチェックしたいタイミングのイベントプロシージャを作る
プロシージャ内で対象範囲をチェックする
0606デフォルトの名無しさん
2014/01/31(金) 21:18:09.720をTextで見ようとすると、セル幅を縮めると#になってしまうし。
ここで難しいのは一点のみで、
0と空のセルの見分けだけ。
0607デフォルトの名無しさん
2014/01/31(金) 21:33:39.180でも空白でもエラーなので見分ける必要はない
ほらもうできた
0608デフォルトの名無しさん
2014/01/31(金) 21:34:36.440609デフォルトの名無しさん
2014/01/31(金) 21:54:53.65では、イベントプロなんちゃらってのは関係内という事でいいんでしょうか?
0610デフォルトの名無しさん
2014/01/31(金) 22:12:46.74for each cel in range("A1:D3")
flag = flag or (val(cel.value) <> 0)
next
if flag then
処理
end if
0611デフォルトの名無しさん
2014/01/31(金) 23:31:02.090612デフォルトの名無しさん
2014/02/01(土) 06:16:32.91いんにゃ、ボタンを作ると勝手に作られる関数があるでしょ。それがイベントプロシージャ。
微妙なのが関数を作っておいてシェイプとかでマクロの登録で設定した場合。
これはイベントプロシージャと呼べるのかと言えば
シェイプ押下時に起きるイベントで呼び出される設定がされた関数ってだけになるのか、
「それってイベントプロシージャってことじゃん」ってなるのかどっちだろ?
0613デフォルトの名無しさん
2014/02/01(土) 07:02:12.88シェイププロシージャ(コードが先でオブジェクト関連付けが後)にしよう
イベントプロシージャ(オブジェクトが先でコードが後)ではないことにしよう
0614デフォルトの名無しさん
2014/02/01(土) 12:24:48.84後から関連付けようが自動的に作成されようがイベントプロシジャにきまってるだろが
0615デフォルトの名無しさん
2014/02/01(土) 14:58:00.05みなさん本当にありがとうございました
0616デフォルトの名無しさん
2014/02/01(土) 21:04:47.990617デフォルトの名無しさん
2014/02/01(土) 22:27:12.53>>610さん賢いなぁ
0618デフォルトの名無しさん
2014/02/02(日) 06:22:16.18冗長だし
0619デフォルトの名無しさん
2014/02/02(日) 07:41:58.11行儀のいい書き方でも3行
0620デフォルトの名無しさん
2014/02/02(日) 17:07:18.390621デフォルトの名無しさん
2014/02/02(日) 17:15:35.151行での書き方もしよければ教えてください
0622デフォルトの名無しさん
2014/02/02(日) 18:27:28.63width、height
0623デフォルトの名無しさん
2014/02/03(月) 20:23:54.81どういうコードを書けばいいですか?
いいアルゴリズムが思いつきません。
乱数を発生させたたびにそれまで発生させたすべての乱数と重複がないか調べ
なければ次の乱数、あればやりなおし、
というアルゴリズムよりいい方法はありますか?
0624デフォルトの名無しさん
2014/02/03(月) 21:33:24.65ここはとりあえず結果が出せればOKなスレ
アルゴリズムを詰めていって最適化する話は余所でどうぞ
0625デフォルトの名無しさん
2014/02/03(月) 21:33:50.250626デフォルトの名無しさん
2014/02/03(月) 22:40:14.82>>339の回答を知りたいんだけど
z個の乱数をx〜yの範囲で発生させ
それらが同一のものが1つもないかどうか調べて (←このアルゴリズムも簡単ではないが)
なければそれで終了、あればまた最初からやりなおし、
という方法はどう?
もっといい方法ある?
623 デフォルトの名無しさん 2014/02/03(月) 20:23:54.81
じゃあ、整数x〜yの範囲でz個の重複しない乱数を求めるには
どういうコードを書けばいいですか?
いいアルゴリズムが思いつきません。
乱数を発生させたたびにそれまで発生させたすべての乱数と重複がないか調べ
なければ次の乱数、あればやりなおし、
というアルゴリズムよりいい方法はありますか?
ふーむ
0627623
2014/02/03(月) 23:03:17.99z個の乱数がほしいから
とりあえず範囲を1ずつ減らした範囲でz個の数列を作る。
そのあとに数決定する。
どうだ?
天才的だろう。
わからない人のために具体例を挙げる。
1から10の範囲で3個の乱数なら
次の範囲内で3個の乱数を発生させる
a= 1〜10
b= 1〜9
c= 1〜8
そして出力の3つの数は10人の人が並んでると想像して
最初の数はa番目に並んでる人。
2番目の数はスペースは詰めてb番目に並んでる人。
3番目の数はスペースは詰めてc番目に並んでる人だ。
0628デフォルトの名無しさん
2014/02/03(月) 23:05:08.560629デフォルトの名無しさん
2014/02/03(月) 23:28:46.88いや、これ以上は恐らく無いだろ。
ソートもちゃっかり兼ねているw
0630デフォルトの名無しさん
2014/02/03(月) 23:28:51.820631デフォルトの名無しさん
2014/02/04(火) 00:07:09.11先頭からz個取る
終了
0632デフォルトの名無しさん
2014/02/04(火) 00:18:21.61If WorksheetFunction.CountIf(Range("A1:D3"), ">0") + WorksheetFunction.CountIf(Range("A1:D3"), "<0") Then 処理
0633デフォルトの名無しさん
2014/02/04(火) 00:21:47.430634デフォルトの名無しさん
2014/02/04(火) 00:22:30.81乱数だろ?ソートしていいんか?
0635デフォルトの名無しさん
2014/02/04(火) 11:50:31.33まえにどっかで見たときの話ならそう言う条件だったはず
実数でいいなら、数千個の乱数出力とかでもなければ単純に繰り返して重複チェックするんでいいんじゃね
数千個の乱数欲するけど重複はダメってなら、乱数の使い方がおかしいと思うぞ
0636デフォルトの名無しさん
2014/02/04(火) 23:23:36.85並べ替えは何回くらいやるの?
多くやらないとちゃんとまざらないし
x-yの範囲が広いときはさらに並べ替えの回数はものすごく多くしないといけない問題がある。
0637デフォルトの名無しさん
2014/02/05(水) 03:43:18.232番目の要素をランダムな要素と入れ替える
以下x-yまでの要素数まで繰り返す
入れ替え回数はx-yの要素数と同じでいいだろ
要素数に対して必要な数が少ないなら効率的ではないけど、それなら単純な重複チェックでいいから
まあとりあえずこれ以上はどっかアルゴリズムのスレ探してそっち行け
0638デフォルトの名無しさん
2014/02/05(水) 09:39:16.44入れ替え入れ替えとあなたおっしゃったけどね
その入れ替え自体のアルゴリズムも考える必要があるんです
あなたとは違うんです
0639デフォルトの名無しさん
2014/02/05(水) 10:44:19.76あらゆる可能性が平等なのが乱数
だから「よく混ざる」ってのは乱数の定義と矛盾する
それは本当の乱数ではなく、乱数のうちの1パターンを人間の意思で選んでいる(または拒否している)
人の意思が入った時点でそれは乱数ではなくなってしまう
0640デフォルトの名無しさん
2014/02/05(水) 14:22:39.33袋に最小から最大の数字を各々書いた玉があって
それを戻さないで取っていくとどうなるかを
コンピュターの乱数機能を利用して実現してるだけだから
そんな乱数の定義とは関係ない。
0641デフォルトの名無しさん
2014/02/05(水) 16:07:27.160642デフォルトの名無しさん
2014/02/05(水) 16:16:06.35For i To n
ソース(i) = i
Next
while n > 0
データ(i) = ソース(random)
n ー 1
i + 1
LOOP
0643デフォルトの名無しさん
2014/02/06(木) 04:12:42.33「乱数を使って並べ替える」みたいなものだからな
0644デフォルトの名無しさん
2014/02/06(木) 10:46:18.47前者の場合、もし最初に引いたのが「1」だったら、2回目は1が出ないことが確定してしまう
乱数なら次も1になる可能性がある
数学的に言えば確率論の中の順列の問題
ビンゴとサイコロの違いと言えばわかりやすい
質問者がわかってない
0645デフォルトの名無しさん
2014/02/06(木) 13:55:18.980646デフォルトの名無しさん
2014/02/19(水) 17:38:52.21Const x As Long=0,y As Long=1000000,z As Long=500000
Dim i As Long,j As Long,k As Single,bool As Boolean,Flag(x To y) As Boolean
'処理
Randomize
Do
bool=z>j
If bool Then k=(z-j)/(y-x-j+1) Else k=1-z/j
For i=x To y
If (Flag(i) Xor bool) And Rnd<=k Then
Flag(i)=Not Flag(i)
If Flag(i)Then j=j+1 Else j=j-1
EndIf
Next
Loop Until j=z
'表示
j=1
For i=x To y
If Flag(i)Then
ActiveSheet.Cells(j,1).Value=i
j=j+1
EndIf
Next
End Sub
0647デフォルトの名無しさん
2014/03/05(水) 07:35:56.11★zipファイルの「阪神近鉄無」フォルダー以下
「平成25年12月」「平成25年11月」の数値未発表で一部合計値比較不可能の為
平成25年10月〜平成13年4月は以下路線の各駅を合計・増減から除外して再計算。
「阪神」─「本線」「なんば線」
「近鉄」─「難波線」「大阪線」「南大阪線」
★zipファイルの「阪神近鉄有」フォルダー以下
除外せず、「平成25年12月」「平成25年11月」の未発表数値を前年同月と同一と仮定
0648デフォルトの名無しさん
2014/03/06(木) 23:19:40.48B600に関数が入っていて
B601には空白です。
B602にも関数が入っていて
B603は空白です。
こんな感じで、Bの1700行まで関数が一行置きに入っているのですが、セルの結合を二行ずつしたいと思っています。
どういう風な記述になりますでしょうか?
0649デフォルトの名無しさん
2014/03/07(金) 00:11:16.39For r = 600 To 1700 Step 2
Range(Cells(r, 2), Cells(r + 1, 2)).Merge
Next
0650デフォルトの名無しさん
2014/03/07(金) 00:51:11.60ありがとうございます!!!
もうひとつお聞きしたいのですが、、、
0651デフォルトの名無しさん
2014/03/07(金) 01:01:27.94If Cells(Target.Row, "E").Value = "新" Then
Application.EnableEvents = False
On Error Resume Next
If Not (Intersect(Target, Range("H:H")) Is Nothing) Then
Cells(Target.Row, "G").Value = (1 - Cells(Target.Row, "H").Value) * Cells(Target.Row, "F").Value
End If
Application.EnableEvents = True
End If
End Sub
0652デフォルトの名無しさん
2014/03/07(金) 01:04:46.690653デフォルトの名無しさん
2014/03/07(金) 07:39:53.100654デフォルトの名無しさん
2014/03/07(金) 08:25:53.28どハマりして結局関数を作った記憶があったようななかったような
とりあえず、G列はH列を参照するのならG列にエクセル関数を入れればいいよ
あとお節介だけど、プログラムが全く理解できてないみたいだけど、知識をつける必要がないのなら構わないけど、自分で調べた方がいいよ
0655デフォルトの名無しさん
2014/03/12(水) 01:22:26.84ID:x9JPMObJおせっかいウザイ。さっさと回答くれ。
0656デフォルトの名無しさん
2014/03/12(水) 01:45:28.79ID:ZXRx46eiてすてす
0658デフォルトの名無しさん
2014/03/12(水) 11:47:45.36ID:4Vi2bcOWコラ。にょろーんとするな。
0659デフォルトの名無しさん
2014/04/03(木) 10:09:06.33ID:Eig24VSKいまいちよくわからないのですが。
0660デフォルトの名無しさん
2014/04/03(木) 10:15:53.71ID:4gfcVwhuVBAからワークシートの数式を書き換えることができる
オートフィルでは思った通りに変化してくれないような時に、VBAを使って数式を自動生成する
0661デフォルトの名無しさん
2014/04/03(木) 10:29:44.67ID:Eig24VSKなるほどありがとうございます。
でもどう使いますか?
単に
Cells(r,c)="=IF(B1=C1,D1,E1)"
と書くのと
Cells(r,c).Formula="=IF(B1=C1,D1,E1)"
と書くのでは違うということでししょうか?
VBAでも自動でオートフィルしてくれますか?たとえばRange("A1:A100")="=B1*100"とすればA100セルは"=B100*100"になってる?
0662デフォルトの名無しさん
2014/04/03(木) 10:30:42.30ID:Eig24VSK0663デフォルトの名無しさん
2014/04/03(木) 11:19:42.03ID:Mk1UvHnqEXCEL2013を導入したのですが
わずかでも数式がある場合に、数行でもコピペで貼り付けすると
再計算(プロセッサ4個):N%などと、時間がかかるのですが、解決方法はありますか?
検索で調べてみても、過去情報ばかりでヒットできません。
環境の問題では無いと思ってるのですが、必要であれば指示してください。
0664デフォルトの名無しさん
2014/04/03(木) 11:23:35.99ID:Mk1UvHnqWorkbooks(".xlsm").Activateですが、SDIの影響でWorkbook_Openに記述してもうまく機能しません。
情報はいくつか検索できましたが、解決していないように見えます。
いい方法ありますか?
0665デフォルトの名無しさん
2014/04/03(木) 11:49:55.12ID:4gfcVwhuその例では混乱することは少ないだろうけど、数式が文字列変数に入っていた場合は
あとでコードを見返した時にセルに何を入れているのかわからなくなる可能性があるので
プロパティは省略すべきではない
また、逆にセルから数式を読み出したい時はプロパティを省略できない
0666デフォルトの名無しさん
2014/04/03(木) 12:42:08.56ID:Eig24VSKそれは
myVal=Cells(r,c).Formula="=IF(B1=C1,D1,E1)"
または
myVal=Cells(r,c).FormulaR1C1="=IF(B1=C1,D1,E1)"
で代入した場合には
変数の型は必ず文字列であり内容も文字列ということですか?
0667デフォルトの名無しさん
2014/04/03(木) 13:19:19.03ID:4gfcVwhu質問の意味が不明
それからコードがおかしい
それではmyValにBoolean型が代入されてしまう
正しくは
myVal = "=IF(B1=C1,D1,E1)"
Cells(r, c).Formula = myVal
など
myValはString型
0668デフォルトの名無しさん
2014/04/03(木) 14:10:31.38ID:Eig24VSKあ、式はたしかに=が2つあって間違ってました。
でも
------------------------------
Sub Unko()
myVal = "=IF(B1=C1,D1,E1)"
ActiveCell.Formula = myVal
Debug.Print ActiveCell.NumberFormat
End Sub
------------------------------
これで試してみると
文字書式はgeneralとでるよ。@じゃなくて。
0669デフォルトの名無しさん
2014/04/03(木) 15:59:16.02ID:4gfcVwhu根本的にわかってない
セルの書式と代入する値の型は無関係
それから下品な名前は使うな
俺はそういうのが嫌いだからもう教えない
0670デフォルトの名無しさん
2014/04/03(木) 16:16:33.02ID:Eig24VSK0671デフォルトの名無しさん
2014/04/05(土) 20:03:54.99ID:eYN2DOjDいる方は、何をお使いになってますか?
VBEで以下の不満があり、関数のアウトライン機能がないこと、列挙体変数をTabで選択せずそのまま入力するとその入力された変数名に変更されてしまうなどがあり、困ってます
0672デフォルトの名無しさん
2014/04/05(土) 20:52:49.41ID:vxn3S8/HVisualStudioのVBのエディターで書いてからコピペとかたまにやるけど常用はしてない
普段は普通のテキストエディター
0673デフォルトの名無しさん
2014/04/06(日) 00:14:11.80ID:6QPkQ4Uqなるほど、確かにVSのアウトライン機能は便利ですもんね…
でもアウトライン機能を常用出来るようなテキストエディタはやはりないんですかね
ありがとうございます。
0674デフォルトの名無しさん
2014/04/06(日) 20:31:36.34ID:SRPo3hu2なぜか途中で入力セルが勝手に変えられてしまいます
MSComm1.InputMode = comInputModeText
rdat = MSComm1.Input2
Sheet3.Cells(InputRow, 11) = rdat //シリアルデータをセルに入力
InputRow = InputRow + 1
1023,964
と入力されるべきところになぜか
1
23,964
とか
12
3964
になってしまいます
似たような方いらっしゃらないでしょうか
0675デフォルトの名無しさん
2014/04/06(日) 21:05:33.20ID:X8q2hYwdオーバーランしてるんじゃねーのか?
まずは、Debug.Print rdat して、読み取りがおかしいのか、セルが書き変わってるのか切り分けなよ。
0676デフォルトの名無しさん
2014/04/06(日) 21:38:35.38ID:SRPo3hu2イミディエイトには
511,476
511,476
5
11,476
となってるので読取がおかしくなっているようです
0677デフォルトの名無しさん
2014/04/07(月) 00:32:05.86ID:6QjlBT3Trdat = MSComm1.Input2
Debug.Print rdat
を実行した結果が↓のようになりました
510,475,442,413,392,379,337,325であるべきところが
510,
475,442,413,392,379,337,325
となってしまいます
いつも起きてるわけではなく9割ぐらいがこうなります
送られてくるデータは最大40文字の文字列なのでStringの容量からはみ出ることはないのですが・・・
rdatからReplaceを使ってvbCrやvbLfを置換しても文字列の改行はなくなりませんでした・・・
これはもうMSCommの仕様でしょうか
0678デフォルトの名無しさん
2014/04/07(月) 01:09:45.66ID:cIwL+5uVバイナリで改行コードをチェック
0679デフォルトの名無しさん
2014/04/07(月) 18:12:05.76ID:NRYmRN39テキストファイルで保存すると改行されています
0680デフォルトの名無しさん
2014/04/07(月) 19:44:01.79ID:cIwL+5uV文字列の先頭から文字コードを順番に表示させてみ
0681デフォルトの名無しさん
2014/04/09(水) 02:10:23.95ID:Zgg01Tu3dataが0だとエラーになります。回避するには大人しくIf elseにするくらいしかないですか?
0682デフォルトの名無しさん
2014/04/09(水) 02:48:42.35ID:rPGWVgOi回避する方法はほかにもある
たとえばOn Errorとか、IIfの入れ子とか
Ifで書く場合もElseは必須じゃないし
0683デフォルトの名無しさん
2014/04/09(水) 02:59:54.43ID:BMFTF5hJVBAはショートサーキットしないから、素直にIFネストしといたら良いんじゃね
セルに計算式埋め込んでIfErrorとかIsErrorとか使えば何とかなるかもしれんが
0684デフォルトの名無しさん
2014/04/09(水) 03:30:52.75ID:rPGWVgOi今回のIIfのエラーとショートサーキットは関係ない
IIfは単なる関数だから、呼び出し前にすべての引数が評価されるだけのこと
0685デフォルトの名無しさん
2014/04/09(水) 04:08:35.13ID:Zgg01Tu3IIFの入れ子だけでエラー回避出来るんですか?思いつかないです。ヒント下さい。
0686デフォルトの名無しさん
2014/04/09(水) 04:18:43.85ID:rPGWVgOiヒントは>>684
IIfは関数だってこと
まず機能限定でいいからIIf関数を自分で作ってみ
0687デフォルトの名無しさん
2014/04/09(水) 05:58:06.04ID:eVaBF0ya0除算の時どうしたいかによるけど、
1/dataの部分を、たとえば
dataが0なら0を返却する様な
関数をかませる方法もあるよ。
ただ、
処理の遅いiifをそこまでして使うほどのメリットを感じないけど。
■ このスレッドは過去ログ倉庫に格納されています