Results 1 to 10 of 75

Thread: vba Copy Paste Conditional to put remark 1 2 3 .. etc

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #23
    Fuhrer, Vierte Reich DocAElstein's Avatar
    Join Date
    Aug 2014
    Posts
    9,521
    Rep Power
    10
    Moderator Notice: This post was posted here in the wrong place. I have left the copy here since the linked post has been referrenced already. I have also copied this and the related reply posts to the correct place, starting here:
    https://excelfox.com/forum/showthrea...ll=1#post14580





    You almost had it right here: https://eileenslounge.com/viewtopic....6a1745#p271427
    You were close to correct.

    I try to explain again what Hans tried to explain ( I think you almost understood ):
    __With Ws1
    ………
    ……….
    …………………
    . Cells(i, "E") ……… .Cells(i, "E")
    __End With

    is almost =
    .....Ws1.Cells(i, "E") …… Ws1.Cells(i, "E")

    You want Ws2 ( for Alertcodes.xlsx ) , not Ws1

    Maybe like
    Code:
               Wtih Ws1
                    If Ws2.Cells(r2, "D") = ">" Then 'calculate the data 1% with column E of AlertCodes.xlsx & add the calculated result with Column E of AlertCodes.xlsx
                        .Cells(i, "K").Value = Ws2.Cells(i, "E").Value - 0.01 * Ws2.Cells(i, "E").Value
                    Else
                        .Cells(i, "K").Value = Ws2.Cells(i, "E").Value + 0.01 * Ws2.Cells(i, "E").Value
                    End If
               End With
    This will also be the same
    Code:
                    If Ws2.Cells(r2, "D") = ">" Then 'calculate the data 1% with column E of AlertCodes.xlsx & add the calculated result with Column E of AlertCodes.xlsx
                        Ws1.Cells(i, "K").Value = Ws2.Cells(i, "E").Value - 0.01 * Ws2.Cells(i, "E").Value
                    Else
                        Ws1.Cells(i, "K").Value = Ws2.Cells(i, "E").Value + 0.01 * Ws2.Cells(i, "E").Value
                    End If
    If this does not work, then you must explain again exactly what you want the macro to do.

    Ws2.Cells(i, "E").Value - 0.01 * Ws2.Cells(i, "E").Value
    and
    Ws2.Cells(i, "E").Value + 0.01 * Ws2.Cells(i, "E").Value
    is 'calculate the data 1% with column E of AlertCodes.xlsx & add the calculated result with Column E of AlertCodes.xlsx




    This was wrong:
    Ws2.Cells(i, "E").Value - 0.01 *.Cells(i, "E").Value
    and
    Ws2.Cells(i, "E").Value + 0.01 * .Cells(i, "E").Value
    It is 'calculate the data 1% with column E of AlertCodes.xlsx & add the calculated result with Column E of 1.xls
    It is the same as
    Ws2.Cells(i, "E").Value - 0.01 *Ws1.Cells(i, "E").Value
    and
    Ws2.Cells(i, "E").Value + 0.01 * Ws1.Cells(i, "E").Value



    ( I never use
    __ With
    __ End With

    because it confuses me.
    But lots of other people, like Hans do use it. Everyone writes codes a bit differently, because all VBA codes can be written in many ways. )





    Also
    Have you seen this ? : https://excelfox.com/forum/showthrea...4565#post14565
    Your macro , Sub STEP6() from here
    https://excelfox.com/forum/showthrea...ll=1#post14562
    and here
    https://eileenslounge.com/viewtopic....271385#p271385
    has the wrong Lr2
    Last edited by DocAElstein; 07-14-2020 at 01:12 PM.

Similar Threads

  1. Replies: 26
    Last Post: 09-26-2020, 05:56 PM
  2. VBA -- Copy/Paste across sheets
    By Rasm in forum Excel Help
    Replies: 4
    Last Post: 09-21-2012, 02:07 PM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •