import java.util.stream.IntStream;

import javafx.application.Application;
import javafx.beans.property.SimpleStringProperty;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.scene.Scene;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.stage.Stage;

public class TableCellTest extends Application {

public static void main(String[] args) {
launch(args);
}

@Override public void start(Stage stage) throws Exception {
int numCols = 125;
int numRows = 75;

ObservableList<Integer> rows = FXCollections.observableList(IntStream.rangeClosed(1, numRows).boxed().toList());
TableView<Integer> tv = new TableView<>(rows);
for (int i = 1; i <= numCols; i++) {
String str = "";
int k = i;
while (k > 0) {
k--;
str = Character.toString(k % 26 + 65) + str;
k /= 26;
}

TableColumn<Integer, String> col = new TableColumn<>(str);
String str2 = str;
col.setCellValueFactory(cdf -> new SimpleStringProperty(str2 + cdf.getValue().toString()));
tv.getColumns().add(col);
}

tv.setFixedCellSize(20); //----------------------------
Scene scene = new Scene(tv, 900, 600);
stage.setScene(scene);
stage.setTitle(System.getProperty("javafx.version"));
stage.show();
}
} 