In what way exactly is your code failing? Are you not getting the expected result? Are you getting an error message? Have you tried adding statements to confirm that you have legitimate values for things like TestID and TestID2?
There is a full example of how to do this in the OTA API Reference documentation under Interfaces > ISupportCopyPaste. Have you referred to that?
Are you trying to copy a single test or a folder of tests?
Below I have reformatted the code you posted with indenting to make it easier to read. It would seem that you didn't post all of your code, since it does not include an End statement for your IF, nor a Next statement for your FOR. Those omissions would cause problems with your code.
Set objTestFactory = qc.TestFactory
Set objTestFilter = objTestFactory.Filter
SubjectPath = "Subject\Automation Assets\_Projects\Archana\Test1"
objTestFilter.Filter("TS_SUBJECT") = "'" & SubjectPath & "'"
Set objTestList = objTestFactory.NewList(objTestFilter.Text)
For Each objTest In objTestList
If objTest.Field("TS_NAME") = "Test1" Then
TestID = objTest.Field("TS_TEST_ID")
Set destTestFact = objTest.TestFactory
Set iscp = destTestFact
clipboard = iscp.CopyToClipBoard(TestID, 0, "")
Set objTestFilter1 = objTestFactory.Filter
SubjectPath1 = "Subject\Automation Assets\_Projects\Archana\Test Destination"
objTestFilter1.Filter("TS_SUBJECT") = "'" & SubjectPath1 & "'"
Set objTest1 = objTestFactory.NewList(objTestFilter1.Text)
TestID2 = objTest1.Field("NodeID")
iscp.PasteFromClipBoard clipboard, TestID2, 0, -1
(Opinions and information contained in this post are wholly my own and do not reflect the opinions of my employer.)