Following up on @FJCC's approach, here is a purrr way of doing it without for loops:
library(tidyverse)
DF <- data.frame(Treat = rep(LETTERS[1:4], 100, replace = TRUE),
A = rnorm(400),
B = rnorm(400),
C = rnorm(400),
D = rnorm(400),
E = rnorm(400),
F = rnorm(400),
G = rnorm(400),
H = rnorm(400))
anova_results <- purrr::map(DF[,2:9], ~aov(.x ~ DF$Treat))
anova_results[[1]]
#> Call:
#> aov(formula = .x ~ DF$Treat)
#>
#> Terms:
#> DF$Treat Residuals
#> Sum of Squares 1.2864 331.4307
#> Deg. of Freedom 3 396
#>
#> Residual standard error: 0.9148477
#> Estimated effects may be unbalanced
Created on 2020-01-18 by the reprex package (v0.3.0)