how to append missing dates using tidyr::complete for each combination excluding result column

Thanks for your quick response. It seems if we use tribble, answer is different

sample_data <- tribble(~A, ~B, ~C, ~ Date, ~ Result,
        "AL",123,"12", as.Date("2014-02-01"), 12345,
        "AL",123,"12", as.Date("2014-04-01"), 12349,
        "AL",123,"12", as.Date("2014-06-01"), 12977,
        "AZ",123,"12", as.Date("2014-01-01"),23435,
        "AZ",123,"12", as.Date("2014-04-01"),453454,
        "AZ",123,"12", as.Date("2014-07-01"),123976)

sample_data %<>% complete(Date = seq.Date(min(Date), max(Date), by="month")) 

tidyr::complete(data = sample_data,
                tidyr::nesting(A, B, C), Date = seq.Date(from = min(Date),
                                                         to = max(Date),
                                                         by = "month"))

# A tibble: 21 x 5
   A         B C     Date       Result
   <chr> <dbl> <chr> <date>      <dbl>
 1 AL      123 12    2014-01-01     NA
 2 AL      123 12    2014-02-01  12345
 3 AL      123 12    2014-03-01     NA
 4 AL      123 12    2014-04-01  12349
 5 AL      123 12    2014-05-01     NA
 6 AL      123 12    2014-06-01  12977
 7 AL      123 12    2014-07-01     NA
 8 AZ      123 12    2014-01-01  23435
 9 AZ      123 12    2014-02-01     NA
10 AZ      123 12    2014-03-01     NA
# … with 11 more rows
# Leads to unnecessary rows !