Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


10063 / 13644 ツリー ←次へ | 前へ→

【23919】#VALUE!を回避して PTマスター 05/4/7(木) 15:09 質問[未読]
【23920】Re:#VALUE!を回避して Jaka 05/4/7(木) 15:20 回答[未読]
【23921】Re:#VALUE!を回避して kazu 05/4/7(木) 15:28 発言[未読]
【23922】Re:#VALUE!を回避して PTマスター 05/4/7(木) 15:56 質問[未読]
【23923】Re:#VALUE!を回避して Kein 05/4/7(木) 16:04 回答[未読]
【23924】Re:#VALUE!を回避して PTマスター 05/4/7(木) 16:34 お礼[未読]

【23919】#VALUE!を回避して
質問  PTマスター  - 05/4/7(木) 15:09 -

引用なし
パスワード
   簡略化して書きます。
1セル内に"/"を含んだものと含まない文字列が縦に並んでします。

aa/aa →  aa
bb/bb →  bb
cc/cc →  cc
dd   →  dd

この文字列の"/"より前部分の文字、無いものは文字列全てを別のセルにコピーさせたいですが・・・
FINDで"/"の位置を探し、先頭から"/"迄を抜き出す事は成功したのですが、"/"がない物は#VALUE!となってしまい処理が止まってしまいます。

ActiveCell.FormulaR1C1 = "=LEFT(RC[5],(FIND(""/"",RC[5],1)-1))"

また1個のセル分の書式を入れた後は個々にコピーして対象個所に使用するので
1行で表現したいです。
何か方法があるでしょうか?

【23920】Re:#VALUE!を回避して
回答  Jaka  - 05/4/7(木) 15:20 -

引用なし
パスワード
   こんにちは。

▼PTマスター さん:
>FINDで"/"の位置を探し、先頭から"/"迄を抜き出す事は成功したのですが、"/"がない物は#VALUE!となってしまい処理が止まってしまいます。
>
>ActiveCell.FormulaR1C1 = "=LEFT(RC[5],(FIND(""/"",RC[5],1)-1))"

単純にIF関数で、エラーの時の処理を組み込めばいいと思いますが....。

IF(ISERROR()・・・
IF(ISERR()・・・

【23921】Re:#VALUE!を回避して
発言  kazu  - 05/4/7(木) 15:28 -

引用なし
パスワード
   PTマスター さん

こんなのも有りかな。

With ActiveCell
  Chk = InStr(1, .Offset(0, 5), "/")
  If Chk <> 0 Then
    .FormulaR1C1 = "=LEFT(RC[5]," & Chk - 1 & ")"
  Else
    .FormulaR1C1 = "=RC[5]"
  End If
End With

【23922】Re:#VALUE!を回避して
質問  PTマスター  - 05/4/7(木) 15:56 -

引用なし
パスワード
   Jaka さんありがとうございます。

>単純にIF関数で、エラーの時の処理を組み込めばいいと思いますが....。
>
>IF(ISERR()・・・

やはりこれですか。目には入りましたが使用法がチョット・・・

"/"の有無をISERRで判定して、その真偽判定に双方の処理を記述する
ってことでしょうか?

【23923】Re:#VALUE!を回避して
回答  Kein  - 05/4/7(木) 16:04 -

引用なし
パスワード
   =IF(ISERR(FIND("/",$F1)),$F1,LEFT($F1,FIND("/",$F1)-1))

などとします。

【23924】Re:#VALUE!を回避して
お礼  PTマスター  - 05/4/7(木) 16:34 -

引用なし
パスワード
   ▼Kein さん:
>=IF(ISERR(FIND("/",$F1)),$F1,LEFT($F1,FIND("/",$F1)-1))
>
>などとします。

ありがとうございます、問題なく処理できるようになりました。

10063 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free