Try this
private void button1_Click(object sender, EventArgs e)
{
int amount = Convert.ToInt32(textBox1.Text.Trim());
for (int i = 1; i < dgv.Columns.Count; i++)
{
foreach (DataGridViewRow row in dgv.Rows)
{
int value = Convert.ToInt32(row.Cells[i].Value);
if (amount >= value)
amount = amount - value;
else if (amount == 0)
row.Cells[i].Value = amount;
else
{
row.Cells[i].Value = amount;
amount = 0;
}
}
}
}
private void Form3_Load(object sender, EventArgs e)
{
DataTable dt = new DataTable();
dt.Columns.Add("Name");
dt.Columns.Add("Apr");
dt.Columns.Add("May");
dt.Columns.Add("Jun");
dt.Columns.Add("July");
dt.Rows.Add("Fee1", 100, 100, 100, 100);
dt.Rows.Add("Fee2", 500, 500, 500, 500);
dt.Rows.Add("Fee3", 700, 700, 700, 700);
dgv.DataSource = dt;
dgv.AllowUserToAddRows = false;
}