Excel VBA質問箱 IV

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

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


9250 / 13646 ツリー ←次へ | 前へ→

【28351】コンマ区切りの命令語について 福岡人 05/9/3(土) 7:53 質問[未読]
【28353】Re:コンマ区切りの命令語について ponpon 05/9/3(土) 8:27 発言[未読]
【28449】Re:コンマ区切りの命令語について 福岡人 05/9/7(水) 5:45 お礼[未読]
【28356】Re:コンマ区切りの命令語について Hirofumi 05/9/3(土) 11:03 回答[未読]
【28450】Re:コンマ区切りの命令語について 福岡人 05/9/7(水) 5:50 お礼[未読]

【28351】コンマ区切りの命令語について
質問  福岡人 E-MAIL  - 05/9/3(土) 7:53 -

引用なし
パスワード
   セル番地に日数を打ち込み、その合計をだしたいのですがどうしたら良いか教えてもらえませんか。
一つのセル番地に 1.4.8.16.22.26.28と日数を打ち込み別のセルにその合計日数を表示したいのですが
たしかtexttocolumns commaを使って各セルに分離してその合計をだしていたような気がするのですが、初心者なので何か他にいい方法があったら教えてもらえないでしょうか。よろしくお願いします。

【28353】Re:コンマ区切りの命令語について
発言  ponpon  - 05/9/3(土) 8:27 -

引用なし
パスワード
   おはようございます。
対象セルが、A1として、

Sub test()
  Dim myVal As Variant
  Dim Total As Integer
  
  myVal = Split(Range("A1").Value, ".")
  For i = 0 To UBound(myVal)
   Total = Total + Val(myVal(i))
  Next
  MsgBox Total

End Sub

【28356】Re:コンマ区切りの命令語について
回答  Hirofumi  - 05/9/3(土) 11:03 -

引用なし
パスワード
   Functionとして有ります
ユーザー定義関数としても使えます
ただし、「1.4.8.16.22.26.28」は、カンマでは無く
ピリオドで区切られていますが?

Public Function AddUp(ByVal vntMark As Variant) As Variant

  Dim i As Long
  Dim lngPos As Long
  Dim lngAdd As Long
  
  If vntMark = "" Then
    Exit Function
  End If
  
  vntMark = StrConv(vntMark, vbNarrow)
  i = 1
  lngPos = InStr(i, vntMark, ",", vbBinaryCompare)
  Do Until lngPos = 0
    lngAdd = lngAdd + Val(Mid(vntMark, i, lngPos - i))
    i = lngPos + 1
    lngPos = InStr(i, vntMark, ",", vbBinaryCompare)
  Loop
  lngAdd = lngAdd + Val(Mid(vntMark, i))
  
  AddUp = lngAdd
  
End Function

【28449】Re:コンマ区切りの命令語について
お礼  福岡人 E-MAIL  - 05/9/7(水) 5:45 -

引用なし
パスワード
   ▼ponpon さん:
>ありがとうございました。早速ためさせていただきました。いつもありがとうございました。

【28450】Re:コンマ区切りの命令語について
お礼  福岡人 E-MAIL  - 05/9/7(水) 5:50 -

引用なし
パスワード
   ▼Hirofumi さん:
>ありがとうございました。まだ、あまり詳しくないため、皆様にはご指導をお願いします。今後ともよろしくお願いします。 
>  

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