Excel VBA質問箱 IV

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

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


32221 / 76734 ←次へ | 前へ→

【49752】Re:NCプログラムの一部を表記したいのですが
回答  Hirofumi  - 07/6/19(火) 19:35 -

引用なし
パスワード
   こんなで善かったかな?
善く確かめて下さい

確か"."が入るか、入ら無いかとでは、
ミリ単位と受けるか?、ミクロン単位で受けるか?が違うのでしたよね?
後、"."の前の0は要りましたっけ? 0.2 → .2

Option Explicit

Public Sub Sample()

  '◆Listのデータ列数(A列〜F列)
  Const clngColumns As Long = 6
  '表示書式
  Const cstrForm As String = "0.###"
  
  Dim i As Long
  Dim lngRows As Long
  Dim rngList As Range
  Dim strResult As String
  Dim vntData As Variant
  Dim dblResult As Double
  Dim dblPai As Double
  Dim strProm As String

  'πの値を取得
  dblPai = Application.WorksheetFunction.Pi
  
  '◆Listの先頭セル位置を基準とする(A列の列見出しのセル位置)
  Set rngList = ActiveSheet.Cells(1, "A")

  With rngList
    '行数の取得
    lngRows = .Offset(Rows.Count - .Row, 1).End(xlUp).Row - .Row
    If lngRows <= 0 Then
      strProm = "データが有りません"
      GoTo Wayout
    End If
  End With
  
  '画面更新を停止
  Application.ScreenUpdating = False

  With Application.WorksheetFunction
    For i = 1 To lngRows
      'A〜F列までの値を配列に取得
      vntData = rngList.Offset(i).Resize(, clngColumns).Value
      '出力用文字列を作成
      strResult = "G3X" & Format(.Round(vntData(1, 5), 3), cstrForm) & "Z"
      dblResult = vntData(1, 6) - vntData(1, 3) _
            * Tan(vntData(1, 4) * dblPai / 180) _
            * Tan((90 - vntData(1, 4)) _
            * dblPai / 180) - vntData(1, 2)
      strResult = strResult & Format(.Round(dblResult, 3), cstrForm)
      strResult = strResult & "R" & Format(.Round(vntData(1, 2), 3), cstrForm)
      '文字列を出力
      rngList.Offset(i + 3, clngColumns + 1).Value = strResult
    Next i
  End With
  
  strProm = "処理が完了しました"
   
Wayout:

  '画面更新を再開
  Application.ScreenUpdating = True
  
  Set rngList = Nothing
   
  MsgBox strProm, vbInformation
     
End Sub

6 hits

【49729】NCプログラムの一部を表記したいのですが おやじvba若葉マーク 07/6/18(月) 23:28 質問
【49732】Re:NCプログラムの一部を表記したいのですが ウッシ 07/6/19(火) 0:07 発言
【49734】Re:NCプログラムの一部を表記したいのですが おやじvba若葉マーク 07/6/19(火) 0:43 発言
【49737】Re:NCプログラムの一部を表記したいのですが ウッシ 07/6/19(火) 9:00 発言
【49766】Re:NCプログラムの一部を表記したいのですが おやじvba若葉マーク 07/6/20(水) 23:50 お礼
【49752】Re:NCプログラムの一部を表記したいのですが Hirofumi 07/6/19(火) 19:35 回答
【49767】Re:NCプログラムの一部を表記したいのですが おやじvba若葉マーク 07/6/20(水) 23:52 お礼

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