Search : in
By :

Copy row 1 to new worksheet if column x true

Last answer on Mar 20, 2009 5:48:07 pm GMT mk, on Mar 20, 2009 2:39:36 pm GMT 
 Report this message to moderators

Hello,

I have a list of manuals on worksheet 1 and I am trying to copy info to new sheet based on request dates.

So, let's say column J is request date.
If a date exists in cell J2, copy row 2 and paste in worksheet 2.
If a date exists in cell J5, copy row 5 and paste in worksheet 2.
... and so forth.

Please help!
Thanks.
MK

Configuration: Windows XP
Internet Explorer 7.0

Best answers for « copy row 1 to new worksheet if column x true » in :
Copy an entire partition on Vista ShowCopy an entire partition on Vista It is possible to copy the entire partition on your hard drive with the DVD of vista. It is very useful if you want to change your hard drive in order to restore all data. To proceed, connect your new...
Download CopyTrans Suite ShowCopyTrans Suite is a set of practical tools for your Ipod or Iphone. It contains: - CopyTrans v2.37 - CopyTrans Photo v2.21 - iLibs v1.13 - iCloner v1.07 - CopyTrans Doctor v1.015 - CopyTrans Manager v0.720 - SyncGuardian v1.45 This...
Download Magical Jelly Bean Keyfinder ShowThe Magical Jelly Bean Keyfinder is an open source tool which allows you to restore product keys (cd key) used for the Windows installation. It allows you to print or to save keys for safekeeping. The program works on most Microsoft products :...

1

SenHu, on Mar 20, 2009 3:00:26 pm GMT
  • +1

1. Save the file worksheet in CSV (Comma separated values) to, say, C:/X.csv.

2. Run the following script in biterscripting.

var str data, line, cell ; cat "C:/X.csv" > $data

# If a date exists in cell J2, copy row 2 and paste in worksheet 2. (Cell J is cell 10.)
lex -p -e "2" $data > $line ; wex -p -e "10" $line > $cell
if ( $cell <> "")
    echo $line >> "C:/Y.csv"
endif

# If a date exists in cell J5, copy row 5 and paste in worksheet 2. (Cell J is cell 10.)
lex -p -e "5" $data > $line ; wex -p -e "10" $line > $cell
if ( $cell <> "")
    echo $line >> "C:/Y.csv"
endif

# ... and so forth. 


3. The resulting worksheet is in C:/Y.csv .

Hope this helps.

If you don't have biterscripting, get it free. It is very useful for automating a lot of things. Install it as follows.

1. Get and install biterscripting from http://www.biterscripting.com . (It is free.)

2. Install all sample scripts with the following command.

script "http://www.biterscripting.com/Download/SS_AllSamples.txt"

3. You are ready to go.

Sen Hu

Reply to SenHu

2

mk, on Mar 20, 2009 4:56:34 pm GMT

Hen Su,

I'm not getting the result.
Also, is this supposed to be automated? So when a date is entered, it automatically copies that row.


MK

Reply to mk

3

 SenHu, on Mar 20, 2009 5:48:07 pm GMT
  • +1

One thing I forgot, add the following at the beginning.

cat "" > "C:/Y.csv" # Empty out the output file from last time.

set $wsep = ","


The sys variable $wsep dictates what separates cells. By default, it is set to space, tab, etc. So, currently, it is probably separating cells at spaces, etc.

To automate, put the entire script in a file, say, C:/Z.txt, then call the following

script "C:/Z.txt" 


You can also call biterscripting from any other program (including a web server) with this script as follows.

C:/biterscripting/biterscripting.exe "C:/Z.txt"


Of course, when original CSV file in X.csv is changed, you would have to run the script again to recreate Y.csv.

One thing I did not get, did you only want rows 2 and 5, or did you want to do this on every row ?

Sen

Reply to SenHu