[[20111026130246]] 『ライト関数とレフト関数の連続』(龍) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ライト関数とレフト関数の連続』(龍)

Sub マクロ@()

      Dim lngRow As Long
     Dim i As Long

      lngRow = Cells(Rows.Count, 1).End(xlUp).Row

     For i = 2 To lngRow
        Cells(i, 4) = Left(Cells(i, 3), 6)
     Next

  End Sub

   Sub マクロβ()
    Dim lngRow As Long
     Dim i As Long

      lngRow = Cells(Rows.Count, 1).End(xlUp).Row

     For i = 2 To lngRow
        Cells(i, 5) = Light(Cells(i, 3), 4)
     Next

End Sub

 というレフト関数とライト関数をマクロで
 入れてますが、レフト関数だけ上手くいって、
 ライト関数は「サブ またはファンクションが設定されていない」と
 なります。

 C列の文字をd列とe列にそれぞれ関数を用いて入力させるというものです。


 LightではなくてRightでは?

 (se_9)

 お恥ずかしい・・・
 上手くいきました。
 (se_9)さんありがとうございました。
<龍>

  (se_9)様
  もう一つ質問させていただきたいのですが、
 
  Sub マクロ()
    Dim lngRow As Long
     Dim i As Long

      lngRow = Cells(Rows.Count, 1).End(xlUp).Row

     For i = 2 To lngRow
        Cells(i, 21) = " S i -Ti"
     Next

End Sub

このとき、S列からT列を引いた値を21列目に返したいのですが、

 S i -Ti  が返ってしまいます。
初心者なので教えていただきたいのですが・・・

宜しくお願いします

(龍)


 質問相手を限定すると、その人以外が答えにくくなってしまいます。
もしse_9さんが多忙だったりしたら、最悪の場合回答が得られないままに終わってしまいますよ。
 
というわけで一応出しゃばりますが、以下が実装例です。
 
Sub マクロ()
    Dim lngRow As Long
    Dim i As Long
    lngRow = Cells(Rows.Count, 1).End(xlUp).Row
    For i = 2 To lngRow
        Cells(i, 21).Value = Cells(i, 19).Value - Cells(i, 20).Value
    Next
End Sub
 
次にRangeを使った場合の例です。
 
Sub マクロ2()
    Dim lngRow As Long
    Dim i As Long
    lngRow = Range("A" & Rows.Count).End(xlUp).Row
    For i = 2 To lngRow
        Range("U" & i).Value = Range("S" & i).Value - Range("T" & i).Value
    Next
End Sub
 
列の扱いを「A列、B列」として見るのか、それとも「1列目、2列目」と見るのか、
思考を統一した方が混乱は少なくなると思います。
(ご近所PG)

失礼しました。(ご近所PG)さん

ありがとうございました。
出来ました。

<龍>


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.