If I understand your question correctly, then there is a way to do this without code, but I think you will need to get involved with the form's source just a little bit.
I have a form with two text fields, field1 and field2, and a single-column repeating table bound to /my:myFields/my:group1/my:group2(repeating). The column's nodes are bound to my:group2/my:field3
I add a button and give it two rules:
Set my:field3 to value of my:field1
Set my:field3 to value of my:field2
I preview the form, add several rows to the repeating table, enter values for field1 and field2 and click the button. All rows of the table are filled with the value of field2. This is obviously not what we want, as I'm sure you've guessed.
I now go back to design mode, and select Save as Source Files... from the File menu and choose a folder for their destination. I close InfoPath.
I browse to the folder and open the manifest.xsf file in an XML editor (a text editor would also work).
I search for the text "ruleset" until I find a section of text that looks like this:
<
xsf:ruleSets>
<xsf:ruleSet name="ruleSet_1">
<xsf:rule caption="Rule 1" isEnabled="yes">
<xsf:assignmentAction targetField="my:group1/my:group2/my:field3" expression="my:field1"></xsf:assignmentAction>
</xsf:rule>
<xsf:rule caption="Rule 2" isEnabled="yes">
<xsf:assignmentAction targetField="my:group1/my:group2/my:field3" expression="my:field2"></xsf:assignmentAction>
</xsf:rule>
</xsf:ruleSet>
</xsf:ruleSets>
The salient parts are the <xsf:assignmentAction> nodes. They are telling the form to copy field1 and field2 into my:group1/my:group2/my:field3 whenever these rules are carried out. Now I add subscripts after my:group2 in the targetField attributes to specify specific rows, like this:
<xsf:ruleSets>
<xsf:ruleSet name="ruleSet_1">
<xsf:rule caption="Rule 1" isEnabled="yes">
<xsf:assignmentAction targetField="my:group1/my:group2[1]/my:field3" expression="my:field1"></xsf:assignmentAction>
</xsf:rule>
<xsf:rule caption="Rule 2" isEnabled="yes">
<xsf:assignmentAction targetField="my:group1/my:group2[2]/my:field3" expression="my:field2"></xsf:assignmentAction>
</xsf:rule>
</xsf:ruleSet>
</xsf:ruleSets>
Now I save and close the manifest, right click the file, choose Design, and preview the form. I repeat the steps I performed during the last preview, and this time only the first two rows are populated. I close the preview and choose File->Save As... to re-save the form as an .xsn file.