Typically you will see this error on submit when there is a file in the changelist that does not exist on the client, and therefore cannot be transferred to the server. There are at least two conditions that can cause this problem.
First, perforce allows you to add files to your changelist (via p4 add) that don't exist. Just drop to a prompt and type 'p4 add blahblah.txt' (assuming blahblah.txt doesn't exist). Perforce will happily add a file to your default changelist. If you try and submit that changelist (and the file still doesn't exist), then you will get the above error).
Second, you can 'p4 edit' a file, then delete it locally, then try and submit the file (or the changelist that the file was in). You will get the same error.
If you are using the command line or p4win (or p4v I presume), then there will be output that will tell you the offending file(s). You might see lines like:
open for read: d:\path\to\file\somefile.txt: The system cannot find the file specified.
This error will tell you that the file doesn't exist. This output will be in the output pane in p4win, or will show up in the output spew from the p4 command line.