To choose the grammatically correct option, we need to consider the correct usage of verb tenses, particularly in relation to the time expression "yesterday." In English, the time expression "yesterday" specifies a completed action in the past. Therefore, the simple past tense is the appropriate choice. Let's evaluate each option:
I have completed the work yesterday. This sentence is incorrect because the present perfect tense ("have completed") is not typically used with specific past time expressions like "yesterday." The correct usage would not pair "have completed" with a specific time.
I did completed the work yesterday. This option is incorrect because it uses both "did" and "completed," which is redundant and grammatically incorrect. In the simple past, "did" should not accompany another past form of the verb like "completed."
I have had completed the work yesterday. This sentence is incorrect because it improperly combines present perfect and past perfect tense in "have had completed," which is not suitable here, especially with the specific time expression "yesterday."
I completed the work yesterday. This sentence is correct. It uses the simple past tense "completed," which is the appropriate form to use with the time expression "yesterday."
Hence, the grammatically correct option is:
I completed the work yesterday.