Excel VBA質問箱 IV

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

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


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

【9634】Left関数について Mg 03/12/11(木) 14:04 質問
【9635】Re:Left関数について INA 03/12/11(木) 14:11 回答
【9638】Re:Left関数について Mg 03/12/11(木) 14:15 質問
【9640】Re:Left関数について ぴかる 03/12/11(木) 15:01 回答
【9642】Re:Left関数について つん 03/12/11(木) 15:05 発言
【9641】Re:Left関数について つん 03/12/11(木) 15:02 回答

【9634】Left関数について
質問  Mg  - 03/12/11(木) 14:04 -

引用なし
パスワード
   下記のようにセルに値が入っているのですが、
このA列の中の先頭にある"-"を Left関数を使用して "削除" したいのですが、
どのようにコードを書いたらよいのかわかりません。
どなたか教えてください。
宜しくお願いします。

  A
1 456
2 456
3 456
4 -456

【9635】Re:Left関数について
回答  INA  - 03/12/11(木) 14:11 -

引用なし
パスワード
   一般機能の「置換」ではダメなのでしょうか?

【9638】Re:Left関数について
質問  Mg  - 03/12/11(木) 14:15 -

引用なし
パスワード
   ▼INA さん:
>一般機能の「置換」ではダメなのでしょうか?

説明不足ですみません。

 456-345
 456
 456
 -456

このような場合があるので。。

【9640】Re:Left関数について
回答  ぴかる  - 03/12/11(木) 15:01 -

引用なし
パスワード
   Mgさん、INAさん、こんにちは。

横から少し失礼します。
こんなんでどうです?。
Sub TEST()
     
  Dim セル As Range
  
  For Each セル In Selection
    If Left(セル, 1) = "-" Then
      セル = Mid(セル, 2)
    End If
  Next
  
End Sub

【9641】Re:Left関数について
回答  つん E-MAIL  - 03/12/11(木) 15:02 -

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

INAさん、横から失礼しますm(__)m

> 456-345
> 456
> 456
> -456

つまり、先頭に「−」があるときだけ、取り除きたいということですか?
だったら、

Sub test2()

  Dim r As Range
  
  For Each r In Selection
    If r.Value Like "-*" Then
      r.Value = Mid(r.Value, 2)
    End If
  Next r
  
End Sub

こうかな?
Left関数じゃ、ちょっと対応できないかと・・・

【9642】Re:Left関数について
発言  つん E-MAIL  - 03/12/11(木) 15:05 -

引用なし
パスワード
   ぴかる さん、こんちゃ

>Sub TEST()
>     
>  Dim セル As Range
>  
>  For Each セル In Selection
>    If Left(セル, 1) = "-" Then
>      セル = Mid(セル, 2)
>    End If
>  Next
>  
>End Sub

あ、そか。Left関数で対応できましたね(^^;

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