Q:

How to create interdependent columns in Excel?

What I am trying to create is a budget spread sheet that can have values be entered into one cell of the daily, weekly, monthly, or yearly columns and it will calculate across the row what the others will be.
          A                   B                  C                   D                  E
1  CATEGORY        DAILY BUDGET      WEEKLY BUDGET      MONTHLY BUDGET      YEARLY BUDGET
2  Restaurants            $1.43            *$10.00*             $43.45            $521.43
3  Fuel                   $3.29             $23.01            *$100.00*         $1,200.00
4  Daily coffee          *$1.65*            $11.55              $50.19            $602.25
5  Auto Insurance         $3.29             $23.01             $100.00         *$1,200.00*

It would look like the above, where asterisks denote where the first-order value is entered. For example, $10 entered in the weekly budget column calculates the values across the other three, and so on for the remaining rows which have first-order values entered in each of the different columns.
I know enough that it involves some Excel VBA. In fact, this answer on Yahoo Answers is very close to what I'd like to do except I need it to work with columns across the active cell's respective row.
EDIT: Added column and row references to my table and here is my code I've modified:
Private Sub PeriodConversion(ByVal Target As Range)
Application.EnableEvents = False
If Target.Address = "$B$2" Then
    [C2] = [B2] * 7
    [E2] = [B2] * 365
    [D2] = [E2] / 12
ElseIf Target.Address = "$C$2" Then
    [B2] = [C2] / 7
    [E2] = [B2] * 365
    [D2] = [E2] / 12
ElseIf Target.Address = "$D$2" Then
    [E2] = [D2] * 12
    [B2] = [E2] / 365
    [C2] = [B2] * 7
ElseIf Target.Address = "$E$2" Then
    [D2] = [E2] / 12
    [B2] = [E2] / 365
    [C2] = [B2] * 7
End If
Application.EnableEvents = True
End Sub

Although it doesn't seem to be working.. :\

A:

I have not tested this, but based on the idea you began, perhaps try this:
(Placing the code in the worksheet where the table is located)
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Row=1 then Exit Sub

    Application.EnableEvents = False
    Select Case Target.Column
        Case 2
            '    [C2] = [B2] * 7
            Target.Offset(0, 1).Value = Target.Value * 7
            '    [E2] = [B2] * 365
            Target.Offset(0, 3).Value = Target.Value * 365
            '    [D2] = [E2] / 12
            Target.Offset(0, 2).Value = Target.Offset(0, 3).Value / 12
        Case 3
            '    [B2] = [C2] / 7
            Target.Offset(0, -1).Value = Target.Value / 7
            '    [E2] = [B2] * 365
            Target.Offset(0, 2).Value = Target.Offset(0, -1).Value * 365
            '    [D2] = [E2] / 12
            Target.Offset(0, 1).Value = Target.Offset(0, 2).Value / 12
        Case 4
            '    [E2] = [D2] * 12
            Target.Offset(0, 1).Value = Target.Value * 12
            '    [B2] = [E2] / 365
            Target.Offset(0, -2).Value = Target.Offset(0, 1).Value / 365
            '    [C2] = [B2] * 7
            Target.Offset(0, -1).Value = Target.Offset(0, -2).Value * 7
        Case 5
            '    [D2] = [E2] / 12
            Target.Offset(0, -1).Value = Target.Value / 12
            '    [B2] = [E2] / 365
            Target.Offset(0, -3).Value = Target.Value / 365
            '    [C2] = [B2] * 7
            Target.Offset(0, -2).Value = Target.Offset(0, -3).Value * 7
    End Select
    Application.EnableEvents = True

End Sub

